how to embed code formatting in Asp.net Application?


Lets understand how to embed code formatting in Asp.net Application. This can be useful while user enters the code online, and we need to format the code and able the preview the same. Example, on online forum or blog if user enters code, application should be smart to understand the part of code and able to format.

This Code Format utility used Manoli Csharp Format, I have used the sourcecode and demonstrate how this can be useful to implement code format in asp.net application.

Step1: Download Sourcecode from Manoli Online Code Format
To accomplish this task, download source code of manoli csharpformat.
Direct link for downloading Sourcecode of Manoli CsharpFormat

Step2: Compile the Class Library Project to generate binaries.

Step3: Create an asp.net application, while will be used to display Formatted Code.

Step4: Right Click project and Add Reference.
- Add Reference of binaries generated by Manoli Code Format Class Library Project

Step5: Add csharp.css file available with Manoli Code Format Sourcecode.
- Right Click and Add Existing Item and browse through location where csharp.css file is located. (This file will be available with sourcecode)
- And add link reference in default.aspx
<link href="csharp.css" rel="stylesheet" type="text/css" />

After adding .dll file and .css file your solution explorer.


Step6: Add the 2 textbox controls, 1 button control and 1 label control.
2 – Textbox control, 1 for taking input and other for displaying generated html code.
1 – Label control for displaying preview.


Step7: Add ValidateRequest="false" in page derective for taking HTML Input
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs"
Inherits="_Default"
ValidateRequest="false" %>

Step8: Looking class diagram of Manoli Code Formatter
- You can create object for each language you wish to format.


Step9: Writing a Code to make everything works.

protected
void btnPreview_Click(object sender, EventArgs e)
{
string InputCode = txtInputCode.Text;
string HTMLCode = SmartFormat(InputCode, "C#", true, true);
lblPreview.Text = HTMLCode;
txtCode.Text = HTMLCode;
}

/// <summary>
/// SmartFormat - Takes InputCode as string
/// and returns Generated HTML Code.
/// </summary>
/// <param name="InputCode"></param>
/// <returns></returns>
private string SmartFormat(string InputCode, string Language,
bool LineNumber,bool AlternateBackground)
{
string OutputHTML = string.Empty;
if (InputCode != string.Empty)
{
SourceFormat FormatCode;
Language = Language.ToUpper();
switch (Language)
{
case "C#":
FormatCode = new CSharpFormat();
break;
case "JS":
case "JavaScript":
FormatCode = new JavaScriptFormat();
break;
case "VB":
FormatCode = new VisualBasicFormat();
break;
case "HTML":
case "XML":
case "ASPX":
FormatCode = new HtmlFormat();
break;
case "SQL":
FormatCode = new TsqlFormat();
break;
case "MSH":
FormatCode = new MshFormat();
break;
default:
FormatCode = new CSharpFormat();
break;
}
FormatCode.LineNumbers = LineNumber;
FormatCode.Alternate = AlternateBackground;
OutputHTML = FormatCode.FormatCode(InputCode);
}
return OutputHTML;
}

how to trim Characters in SQL Server ?




If you are looking for following solution than probably this post can help you out:

  • How to Trim Characters in SQL Server
  • How to Extract Part of String in SQL Server
  • Returning only Numeric Part of String in SQL Server
  • Trim String in SQL Server
  • Trim Left and Right Portion of String in SQL Server
  • How to Sort Numeric String in SQL Server.

Note: The Example I am going to discuss is the solution for above mention criteria, understand it and you can be able to derive solution for your problem.

I want to sort a string like this.

Nodes

1-49

100-249

1000-2499

10000+

250-499

2500-4999

50-99

500-749

5000-9999

750-999


Lets go step by step and then letter sum it up.

Step1: To undergo this task I need to extract characters from left till this "-" or "+" character.

Let find length till this "-"

select distinct MyExpr,charindex('-',MyExpr)-1 as Nodes from MyTable

1-49

1

10000+

-1

750-999

3

5000-9999

4

250-499

3

1000-2499

4

500-749

3

2500-4999

4

100-249

3

50-99

2

































So I also require separate statement for

select distinct MyExpr,charindex('-',MyExpr)-1 as Nodes from MyTable

1-49

-1

10000+

5

750-999

-1

5000-9999

-1

250-499

-1

1000-2499

-1

500-749

-1

2500-4999

-1

100-249

-1

50-99

-1

Now lets extract part of string by using substring function and case select statement.

select distinct MyExpr as Nodes,

substring(MyExpr,1,(

case

when charindex('-',MyExpr)-1 = '-1'

then charindex('+',MyExpr)-1

else charindex('-',MyExpr)-1 end

)

)

as 'NodesSort'

from MyTable

Order by 'NodesSort'

So this gives us extraction of Part of string from string. You can also see trim right portion of string.

1-49

1

100-249

100

1000-2499

1000

10000+

10000

250-499

250

2500-4999

2500

50-99

50

500-749

500

5000-9999

5000

750-999

750


Now casting the string and displaying in sorted order.

Casting string to int and applying order by for sorting.

select distinct MyExpr as Nodes,

-- SORT Logic

cast(

substring(MyExpr,1,(

case

when charindex('-',MyExpr)-1 = '-1'

then charindex('+',MyExpr)-1

else charindex('-',MyExpr)-1 end

)

)

as int) as 'NodesSort'

from MyTable

order by 'NodesSort'

1-49

1

50-99

50

100-249

100

250-499

250

500-749

500

750-999

750

1000-2499

1000

2500-4999

2500

5000-9999

5000

10000+

10000


What's next for csUnit?

Since the March '08 release of csUnit we have thought about what area we should focus on next. We have improved the performance, we have added data-driven testing, and we there were always a few features that csUnit provided first.

The next area we are looking at is usability. We'd like to improve usability significantly.

For instance, as test suites grow it may become more and more time consuming to locate a particular test or test fixture. The next version of csUnit will therefore feature an easy to use search capability, available for both the stand-alone GUI and the addin for Visual Studio.

We are also putting quite some effort into improving the test tree view. We believe that all users will benefit from improvements in this area.

And finally, csUnit has become very feature rich over time. Some people prefer a simpler UI. We want to serve both groups of users the ones who prefer the rich functionality, and the ones who prefer to keep it simple. The idea is to add some configurability to the UI so that depending on your preference more or less elements become visible.

Stay tuned! And if there is a feature you'd like to see, don't hesitate to visit csUnit's web site and follow the link to "Suggest a feature" that you can find on most pages.

What's the alternative of MySQL ? Because MySQL may be closed-source

The decision is certainly Sun Microsystem's business. However, the users have an opportunity to help Sun Microsystem's understand the consequences of their decision.

For instance, if you want to continue using an open-source database, PostgreSQL might be an alternative worth looking at. Developing for the Microsoft platform, it offers native interfaces for C, C++, and .NET, and even the "good old" (?) ODBC is available.

Tips for Debugging Custom Actions in dotnet

Tip 1: For the message box make sure you give it a title or caption. For instance if you use MessageBox.Show() then use the overload that takes two strings as parameters. The first is the message in the message box. The second parameter is the caption. That's the important one since this is the string that you will find in the list of processes when you want to identify the right process.

Tip 2: In the dialog box for attaching the debugger to a process make sure you tick "Show processes from all users" as it might be that the msiexec.exe instance you are interested in is not displayed.

What is Union in C#?Explain with sample code

One can simulate union in C# with the help of StructLayout and FieldOffset attributes.

StructLayout attribute allows the user to control the physical layout of the data fields of a class or structure. Specify the LayoutKind the first parameter as LayoutKind.Explicit.

Tag each field with FieldOffset attribute. The attribute must be applied so that the type members are overlaying the same memory area.


using System;
using System.Runtime.InteropServices;
// Above namespace required for StructLayout attribute
namespace UnionTest
{
class Program
{
static void Main(string[] args)
{
Union test = new Union();
test.x = 256;
//Setting value 256 makes high-order byte to be set to 1. Byte ranges up to 255.
Console.WriteLine("Low:" + test.lowx + "\nHigh:" + test.highx);
}
}
[StructLayout(LayoutKind.Explicit,Size=2)]
public struct Union
{
//2 bytes
[FieldOffset(0)]public short x;
//1 byte
[FieldOffset(0)]public byte lowx;
//1 byte -->represents high-order byte.
[FieldOffset(1)]public byte highx;
}
}

What is Local Type Inference in C# 3.0?

C# 3.0 has new feature called "Local Type Inference". Type Inference lets compiler decide the data type of variable/object. Variable initializing data value helps compiler to decide the data type. C# 3.0 introduces new keywaord "var" to declare such variables. No explicit type declaration is required.

Local Type Inference has type inference only for local variables. One cannot declare class-/struct-level fields with keyword "var". "var" cannot act as return type for function and cannot appear in function parameter i.e. no "var" should be used in function signature.


using System;

namespace TypeInference
{
class Program
{
static void Main(string[] args)
{
var i = 5;
var intArray = new int[] { 1, 2, 3, 4, 5 };
//Variables declared with var cannot be assigned to null if no type has been inferred.
var str = default(string);
Console.WriteLine("Data Type Of i:"+i.GetType().Name);
Console.WriteLine("Data Type of intArray:" + intArray.GetType().Name);
//Console.WriteLine("Data Type of str:" + str.GetType().Name); -->Null Reference Exception
str = "";
Console.WriteLine("Data Type of str:" + str.GetType().Name);
}
}
}

What is Extension Methods in C# 3.0?

Developer code for assemblies. Compile it & publish it for client use. User of assembly may like to have some additional functionality in data types of the assembly. e.g int or Int32 do not have function to convert integer to complex number. ComplexNumber is the new data type defined by user.

Now with C# 3.0 has provided with the concept of extension methods. Extension methods enable us to extend the functionality of data types already defined. No source code of the assembly is available to modify & recompile the assembly. Still one can extend the data types functionality.

Inheritance also provides capability to extend the functionality but the extended functionality is available only for derived classes & not to the base class. e.g Consider I'd like to have a ToInt function in String class. If I use inheritance approach, I have to create new derived type. So I cannot use methods of derived type on my String objects.

Extension methods are written in static class. The method should also a static method. First parameter of the method must be of type being extended. The first parameter must have this keyword before it.

See the code below.

public static class ExtensionInt
{
public static Complex ToComplex(this int val)
{
Complex temp = new Complex();
temp.Real = val;
return temp;
}
}

Complex is the type defined as follows:

public class Complex
{
public int Real;
public int Imag;
public override string ToString()
{
return (Real.ToString() + "+i" + Imag.ToString());
}
}

Use the method ToComplex for int or Int32.
static void Main(string[] args)
{
int i = 5;
Console.WriteLine(i.ToComplex().ToString());
}

Sealed classes can take advantage of extension methods. LINQ makes use of extension methods defined in Enumerable static class. The class extends functionality of objects implementing IEnumerable interface. To use the extension methods from Enumerable class refer the assembly System.Core.

how to Fetch System Information in C#?

System.Windows.Forms namespace has SystemInformation class. The class has various static properties. To get information about the current system environment, use the class.

To determine the startup mode of the system, use BootMode property. The property can have values : Normal, FailSafe or FailSafeWithNetwork. All these values are defined in BootMode enumeration of System.Windows.Forms namespace.

using System;
using System.Windows.Forms;

//Add reference to System.Windows.Forms assembly.

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(SystemInformation.BootMode.ToString());
}
}
}

To access the computer name, use ComputerName property.

Console.WriteLine(SystemInformation.ComputeName);

To find out number of displays connected to machine, MonitorCount propery will help us.

Console.WriteLine(SystemInformation.MonitorCount.ToString());

Availability of mouse can be checked with the help of property MousePresent.

static void Main(string[] args)
{
if(SystemInformation.MousePresent)
Console.WriteLine("System has the mouse connected");
}

To check for network connection availability, use Network property.

if(SystemInformation.Network)
Console.WriteLine("System is connected to the network.");
There are lot many properties exposed by SystemInformation class.

What is Delegates in C#? Explain Delegates

Delegates in C#

Pointer is a variable, which stores address of some memory location. The memory location can be the storage for some value or beginning of function. When it points to function, it is function pointer. Function pointer has address of the function.

Function pointers are not safe. In thousand lines of code, if we have to invoke the function using function pointer, we cannot assure that the pointer points to function without going through the code.
We cannot ensure the number of parameters to the function or the order of parameters. Order of parameters refer to data types. What will happen if we invoked a function with function pointer & pointer is not pointing to function? What will happen if we invoked a function with function pointer & number of arguments are more or less passed? What will happen if we invoked a function with function pointer & order of parameters is wrong? (e.g. Function accepts int first & we pass string first.)

In all cases, our application will crash. In essence, Function pointers are not type-safe.

.NET has got a concept of delegates which are type-safe function pointers with ability to point to multiple functions. Delegates are declared in C# using keyword delegate.

public delegate void DisplayDelegate(string msg);

Declaration of delegate is just like function declaration. That is, the delegate must be declared with return data type & parameters. Parameter names are not relevant.

Internally, a class "DisplayDelegate" is generated which derives from System.MulticastDelegate. System.MulticastDelegate derives from System.Delegate. System.Delegate is the base class. One can create the object of "DisplayDelegate" class. The constructor accepts the function which has same signature as that of delegate declaration.
using System;

namespace DelegateDemo
{
public delegate void DisplayDelegate(string msg);
class Program
{
static void Main(string[] args)
{
DisplayDelegate del = new DisplayDelegate(Show);
del("Hello, delegate!!!");
//Or del.Invoke("Hello, delegate!!!");
}
static void Show(string str)
{
Console.WriteLine(str);
}
}
}
To invoke function using delegate, use Invoke function on delegate object with parameter values for the function. The function wrapped in delegate can be static or instance function.

Let's see, how delegates are type-safe? When one creates a delegate object, the delegate is aware of the parameters required. Wherever you call the function using delegate, compiler will not compile the program if,

  • function specified in constructor is not with appropriate function signature.
  • the number of parameters are less or more while invoking the function.
  • the order of parameters is not appropriate.
In essence, delegates are type-safe. One can catch the errors at compile-time only using delegatesA single delegate can have multiple functions. All functions must have same signature like delegate. Delegate invokes functions in FIFO(First-In,First-Out) order. If the function has return value, return value of last function invoked will be returned by delegate. Return values of all other functions are lost.

System.Delegate class has two static methods Combine and Remove. Use the methods to provide the delegate with multiple functions.
using System;
using System.Windows.Forms;

namespace DelegateDemo
{
public delegate void DisplayDelegate(string msg);
class Program
{
static void Main(string[] args)
{
DisplayDelegate del = new DisplayDelegate(Show);
DisplayDelegate del1 = new DisplayDelegate(Print);
del = (DisplayDelegate)Delegate.Combine(del, del1);
del("Hello,World!!!");
del = (DisplayDelegate)Delegate.Remove(del, del1);
del("Hi!!!");
}
static void Show(string str)
{
MessageBox.Show(str);
}
static void Print(string msg)
{
Console.WriteLine(msg);
}
}
}

System.Delegate has two properties Method and Target. The derived class have these properties inherited. "Method" property gets the method represented by delegate. "Target" gets the instance/object on which the delegate operates. "Target" returns null for static methods.
static void Main(string[] args)
{
DisplayDelegate del = new DisplayDelegate(Show);
Console.WriteLine(del.Method.Name);
if(del.Target!=null)
Console.WriteLine(del.Target.ToString());
}

If delegate has multiple functions, one can use GetInvocationList method of System.Delegate class to retrieve System.Delegate[] array.

static void Main(string[] args)
{
DisplayDelegate del = new DisplayDelegate(Show);
DisplayDelegate del1 = new DisplayDelegate(Print);
del = (DisplayDelegate)Delegate.Combine(del, del1);
foreach (DisplayDelegate minf in del.GetInvocationList())
{
Console.WriteLine(minf.Method.Name);
}
}

CodeProject-New articles added Last week


New articles added Last week

Combo & List Boxes

  • Read Only Combo Box Provider - RanceDowner1234
    How to create a read only combo box user IExtenderProvider (Unedited)
    VB (VB 8.0, VB), .NET (.NET, .NET 2.0), WinForms, Dev, Intermediate

Dialogs and Windows

  • A Plugin Wizard Framework - Marc Clifton
    A wizard framework that supports plugins for the wizard pages (Unedited)
    C#, Windows, WinForms, Design, Arch, Dev, Intermediate

Grid & Data Controls

  • Extending the DataGridView - Chris_McGrath
    A few minor modifications to improve the DataGridView (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET (.NET, .NET 2.0, .NET 3.5, .NET 3.0), WinForms, Beginner

  • Editable and Multi-Functional Datagridview - Viram
    The article or rather a code snippet demonstrates a simple application of insert, update, delete using datagridview. There are some unique features in this datagridview.
    VB.NET 2.0, Dev, Intermediate

Miscellaneous

  • Painless Persistence of Windows Forms positions - Phil Martin...
    A no-pain way of retaining your Windows Form positions between application runs (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET (.NET, .NET 2.0, .NET 3.5), WinForms, Dev, Beginner, Intermediate

Status Bar

Ajax and Atlas

ASP.NET

Custom Controls

Silverlight

Web Security

  • .NET Role-Based Security in a Production Environment - Ralph in Boise
    Edit web.config to Update the Data Provider for Shared Hosting with Role-Based Security: SQL Server, ODBC, Active Directory, ADAM, SQLite, MySQL, Access, XML (Unedited)
    .NET (.NET 2.0, .NET 3.0, .NET 3.5, .NET), WebForms, ASP.NET, Arch, Dev, Beginner, Intermediate

Web Services

  • Web Services For Ecologists - Andrew Birt, Rahul Ravikumar
    A framework for distributing scientific models over the web (Unedited)
    C++, C#, Windows, Visual Studio, ATL, ASP.NET, Beginner

SharePoint Server

Audio and Video

  • Multimedia PeakMeter control - Ernest Laurentin
    Multimedia PeakMeter control - .NET version (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET CF, .NET, GDI+, WinForms, Design, Dev, Beginner

  • Hands Gesture Recognition - Andrew Kirillov
    Some ideas about Hands Gesture Recognition in still images and video feeds, using the AForge.NET framework (C#).
    C#, Windows, .NET (.NET 2.0, .NET), WinForms, GDI+, DirectX, Arch, Dev, Intermediate

GDI+

  • GDI+ Code Generator - Richard Blythe
    Allows the user to draw vector graphic shapes, then converts them to GDI+ code. (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET, GDI+, Design, Intermediate

SQL Reporting Services

.NET Framework

  • .NET 2.0 Configuration and Provider Model - Sergey Sorokin
    Use .NET 2.0 configuration features for building a pluggable provider framework for your application. (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET (.NET, .NET 2.0, .NET 3.5, .NET 3.0), Visual Studio (VS2008, VS), Arch, Dev, Design, Intermediate

Libraries

  • Genetic Algorithm Library - Mladen Jankovic
    Framework for genetic algorithms (Unedited)
    C++, Windows, Win32, Visual Studio, MFC, STL, Arch, Dev, Design, Intermediate

LINQ

Windows Communication Foundation

  • WCF Error Handling and Fault Conversion - Sasha Goldshtein
    This article describes the WCF error-handling paradigm, and provides a mechanism for automatic mapping of exceptions to WCF faults.
    C#, Windows, WCF, Arch, Dev, Intermediate, Advanced

Windows Powershell

  • Saving Powershell commands across sessions - Gideon Engelberth
    A set of functions to provide the ability to save commands to be used in future Powershell sessions. (Unedited)
    Windows (WinXP, Win2003, Vista, Windows), .NET (.NET 2.0, .NET), SysAdmin, DBA, Dev, Intermediate

Windows Presentation Foundation

C / C++ Language

  • C++ Coding Practices Guide - Chesnokov Yuriy
    The article describes C++ coding styles and practices to be followed to develop robust and reliable code that is easily comprehended and maintained by other developers.
    C++ (VC6, VC7, VC7.1, VC8.0, C++), C++/CLI, C, Windows, .NET, MFC, WinForms, Dev, Intermediate

C#

  • EnumOperators - PIEBALDconsult
    A class to help ease the burden of not being able to specify enum as a generic constraint
    C#.NET 2.0, Dev, Intermediate

  • Plugins manager - Luca Bonotto
    A plugins manager class to menage a plugins structure (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#)

  • C# DAL Method Code Generator - Saravanan.B
    Generates C# data access layer method code for SQL sever stored procedures (Unedited)
    C# (C# 2.0, C#), .NET (.NET, .NET 2.0), WinForms, Dev, Beginner

  • Developing Visual Studio Add-in to enforce company's standard modification history - Rahil Manasia
    Using Visual Studio.net to developing Add-in to enforce company's standard modification history (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET, Visual Studio, Arch, Dev, Design, Beginner, Intermediate

VB.NET

  • Schema Generator - dnpro
    Utility to generate schema description from existing SQL Server database (Unedited)
    C# (C# 2.0, C#), VB 7.x, VB 8.0, VB 9.0, VB 6, .NET (.NET, .NET 2.0), WinForms, DBA, Dev, Intermediate

  • A Process viewer with alert notification - dnpro
    Simple process viewer that is capable of setting alerts for process events. (Unedited)
    VB (VB 9.0, VB), .NET (.NET, .NET 2.0), WinForms, SysAdmin, Dev, Intermediate

XML

Algorithms & Recipes

  • Wordmills are coming... - Chesnokov Yuriy
    The article describes how a computer-being can be trained to write text articles, poems, compose music, or paint contemporary paintings.
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET (.NET, .NET 3.5), Dev, Intermediate

  • Using memory mapped files to conserve physical memory for large arrays - Mikael Svenson
    The article shows how to implement a value type array as a memory mapped file to conserve physical memory. (Unedited)
    C# (C# 2.0, C# 3.0, C#), .NET (.NET, .NET 3.5, .NET 2.0), Arch, Dev, Intermediate, Advanced

  • Evaluation Engine - Donald Snowdy
    The Evaluation Engine is a parser and interpreter that can be used to define rules for Business Rules Engine. (Unedited)
    C#, .NET, Visual Studio, WinForms, WebForms, Design, Arch, Dev, Intermediate, Advanced

Cryptography & Security

  • Creating a secure channel - Efi Merdler
    The purpose of this article is to explain how a secure channel is built. The article will explain the structure of a Very Simple Secured Protocol (VSSP) that sits above the TCP/IP layer.
    C# (C# 2.0, C#), Windows (Windows, WinXP), Dev, Intermediate, Advanced

Book Chapters

  • Building Spring 2 Enterprise Applications: Chapter 4: Spring AOP 2.0 - aPress
    The open-source Spring Framework has become a popular application framework for building enterprise Java apps. This chapter explores the newest features in Spring AOP (Aspect-Oriented Programming), including @AspectJ-style annotations, the AspectJ pointcut language, Spring AOP XML tags and more. (Unedited)
    Dev, Design, Advanced

Product Showcase

  • Static Analysis on Steroids: Parasoft BugDetective - Parasoft Corporation
    Data flow analysis enables early and effortless detection of critical runtime errors like exceptions, resource leaks, and security vulnerabilities. It can also check if exceptions reported from automated unit testing are "real bugs."
    C++, Java, .NET, Linux, Arch, Dev, QA, Intermediate

Articles updated added Last week

Miscellaneous

Progress Controls

Shell and IE programming

  • A File Checksum Shell Menu Extension Dll - Jeffrey Walton
    Create a File Checksum Shell Menu Extension using ATL and Crypto++ (Unedited)
    VC6, VC7, VC7.1, VC8.0, VC9.0NT4, Win2K, WinXP, Win2003, Vista, ATL, STL, COM, VS.NET2002, VS.NET2003, VS6, Dev, Intermediate

Ajax and Atlas

Applications & Tools

ASP.NET

ASP.NET Controls

  • Google's Static Map API WebControl - Florian DREVET
    Shows you how to build an image based WebControl displaying static maps with markers
    C# (C# 2.0, C#), .NET (.NET, .NET 2.0), ASP.NET, Dev, Design, Intermediate

Internet / Network

  • MailMergeLib - A .NET Mail Client Library - Norbert Bietsch
    MailMergeLib is a mail client library. It makes use of .NET System.Net.Mail and provides comfortable mail merge capabilities. MailMergeLib corrects a number of the most annoying bugs and RFC violations that .NET 2.0 to .NET 3.5 suffer from.
    C# 2.0, C# 3.0.NET 2.0, Win2K, WinXP, Win2003, Vista, ASP.NET, VS2005, VS2008, Dev, Beginner, Intermediate

Database

.NET Framework

Game Development

Libraries

  • DNS.NET Resolver (C#) - alphons
    Full implementation of a reusable DNS resolver component and a Dig.Net example application (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), Windows, .NET (.NET, .NET 2.0), Visual Studio (VS2005, VS), Dev, Advanced

Mobile Development

  • Termie : a simple RS232 terminal - milkplus
    Termie opens a serial port and allows you to communicate with it in a chat-like interface. (Unedited)
    C# (C# 2.0, C# 3.0, C#), Windows, .NET, Dev, Intermediate

Windows Presentation Foundation

Windows Workflow Foundation

C#

  • NArrange - .NET Code Organizer - James Nies
    Using NArrange to Organize C# Source Code (Unedited)
    C#, VB, .NET, Visual Studio, Dev, Intermediate

  • List Comprehensions for C# 2.0 - Frohwalt Egerer
    Writing nice list comprehensions for C# 2.0.
    C# (C# 2.0, C#), .NET, Dev, Intermediate

  • Index XML Documents with VTD-XML - Jimmy Zhang
    Introduce a simple, efficient, human-readable XML index called VTD+XML (Unedited)
    C, C# (C# 1.0, C# 2.0, C# 3.0, C#), Javascript, XML, CSS, HTML, ASM, MSIL, UML, Forth.NET, XSLT, Office, XBox, Windows (Windows, Win2K, WinXP, Win2003, Vista), WinCE, .NET CF, .NET (.NET, Mono, DotGNU, .NET 3.5), ASP, ASP.NET, Win32, Win64, SQL (SQL 2000, SQL 2005, SQL), IIS, GDI, GDI+, OpenGL, DirectX, LINQ, Ajax, WCF, XAML, WPF, COM, COM+, ADO, ADO.NET, VS.NET2002, VS.NET2003, VS2005, VS2008, Design, CEO, Arch, DBA, Dev, QA, Beginner, Intermediate, Advanced

  • Windows Services in Action I - Umut ŞİMÅžEK
    Explains windows services basics and deployment with details. (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), Windows (Windows, NT4, Win2K, WinXP, Win2003, Vista, TabletPC, Embedded), .NET (.NET, .NET 3.5, .NET 3.0, .NET 1.0, .NET 1.1, .NET 2.0, Mono, DotGNU), Win32, Beginner

  • VTD-XML: XML Processing for the Future (Part II) - Jimmy Zhang
    Reveal XML processing issue #1 and explain why document-centric XML Processing is the future (Unedited)
    C#, XML, .NET (DotGNU, .NET), Dev

  • Multiple Ways to do Multiple Inserts - Neeraj Saluja
    Various ways to do Multiple Inserts in SQL Server 2000/2005 or Oracle Database using ADO.NET in single database round trip. (Unedited)
    C# (C# 1.0, C# 2.0, C#), .NET (.NET, .NET 1.1, .NET 2.0), ADO.NET, Dev, Intermediate

  • Schemaless C#-XML data binding with VTD-XML - Jimmy Zhang
    Agile, efficient XML data binding without schema (Unedited)
    C# (C# 1.0, C# 2.0, C# 3.0, C#), XML, .NET CF, .NET (.NET, .NET 3.5, .NET 3.0, .NET 1.0, .NET 1.1, .NET 2.0), ASP, Win32, Win64, ADO.NET, WCF, Ajax, Design, CEO, Arch, DBA, Dev, QA, Beginner, Intermediate, Advanced

C++ / CLI

  • DirectoryList 2.0 - nirvansk815
    A custom listbox control to help visually manipulate data (Unedited)
    C++ (C++, VC9.0), C++/CLI, .NET (.NET, .NET 2.0), Win32, Visual Studio (VS2005, VS2008, VS), WinForms, Intermediate

VB.NET

Algorithms & Recipes

  • C++ Strtk Tokenizer - Arash Partow
    A brief introduction to a tokenizer implementation in C++ (Unedited)
    C++ (VC7.1, VC8.0, C++), C++/CLI, C, Dev, Beginner

  • Implementing a super-fast, size-constrained generic cache - Alexander Mossin
    The article shows how to combine two of the most common data structures into a high-performance, self-organizing cache with a maximum size.
    C# (C# 1.0, C# 2.0, C# 3.0, C#), .NET (.NET, .NET 2.0, .NET 3.5, .NET 3.0), Dev, Intermediate

  • Genetic Algorithms in Artificial Neural Network Classification Problems - Chesnokov Yuriy
    The article demonstrating application of genetic algorithms for classification problems with artificial neural networks (Unedited)
    C++ (VC6, VC7, VC7.1, VC8.0, C++), C++/CLI, C, Windows, Dev, Intermediate

  • Permutations, Combinations and Variations using C# Generics - Adrian Akison
    Discusses the six major types of combinatorial collections with examples and formulas for counting. Expands with a C# generics-based set of classes for enumerating each meta-collection. (Unedited)
    C# (C# 2.0, C# 3.0, C#), .NET (.NET, .NET 2.0, .NET 3.5, .NET 3.0), Arch, Dev, QA, Design, Beginner, Intermediate

  • Inner Product Experiment: CPU, FPU vs. SSE* - Chesnokov Yuriy
    The article demonstrating inner product operation performed with shorts, ints, floats and doubles with CPU/FPU and SSE for comparison. (Unedited)
    C++ (VC6, VC7, VC7.1, VC8.0, C++), C++/CLI, C

  • Inner Product Experiment: C# vs. C/C++ - Chesnokov Yuriy
    The article demonstrating speed of inner product operation performed with shorts, ints, longs, floats, doubles and decimals in C# compared to C/C++ (Unedited)
    C#, Windows, .NET, Visual Studio, Dev, Intermediate

  • 2D Vector Class Wrapper SSE Optimized for Math Operations - Chesnokov Yuriy
    The article demonstrates a 2D vector wrapper, optimized with SSE intrinsics, for math operations with floating point precision.
    C++ (VC6, VC7, VC7.1, VC8.0, C++), C++/CLI, C, Dev, Intermediate

  • Backpropagation Artificial Neural Network in C++ - Chesnokov Yuriy
    The article demonstrating backpropagation artificial neural network console application with validation and test sets for performance estimation using uneven distribution metrics. (Unedited)
    C++ (VC6, VC7, VC7.1, VC8.0, C++), C++/CLI, C, Windows, Dev, Intermediate

Cryptography & Security

  • Cryptographic Interoperability: Digital Signatures - Jeffrey Walton
    Sign and verify messages using Crypto++, Java, and C#.
    C++ (VC7, VC7.1, VC8.0, C++), C# (C# 2.0, C# 3.0, C#), Java, Windows (Windows, Win2K, WinXP, Win2003, Vista), Win32, Dev, Intermediate

Threads, Processes & IPC

  • A C++ plugin ThreadPool design - Alex C. Punnen
    The Command Pattern and Chain of Responsibility for implementing a plugin ThreadPool library (Unedited)
    C++ (VC6, VC7, VC7.1, VC8.0, C++, VC9.0), Windows (Windows, WinXP, Win2003, Vista), Win32, STL, Arch, Dev, Design, Intermediate, Advanced

Design and Architecture

  • Secrets for Setting Up Continuous Integration - wallism
    A few simple tips that should help when you are considering setting up CI (Unedited)
    SQL, C# (C# 1.0, C# 2.0, C# 3.0, C#), VB (VB 7.x, VB 8.0, VB 9.0, VB), .NET (.NET, .NET 3.5, .NET 3.0, .NET 1.1, .NET 2.0), SQL (SQL 2005, SQL), WinForms, WebForms, ASP.NET, Arch, DBA, Dev, Beginner, Intermediate, Advanced

Hardware & System


Best Wireless Keyboard and Mouse.

Is best keyboard and mouse, how lets consider few factor on which i came to conclusion and which turns to right decision.


Few days back i was like one of you searching on net for best wirless keyboard and mouse, i had read reviews on circuity city, bestbuy websites, but they were making me more confuse., oops and schemes, discount, special offer for buying low cost keyboard, mouse were making the situation worst.


Ok let me share how i have conclude that Logitech Cordless Desktop S 510 is best keyboard and mouse.
  • Brand Trust (Logitech is most reliable than any other brand when it comes to mouse and keyboard.)
  • Performance when operating from far Distance, signals are not fadeing and they are accurate.
  • Battery Life, it is most power saver keyboard and mouse as compare to other products available in market, which was another factor which made my decision easy.
  • Cost Effective, Smart choice. There were lot of keyboard i came across which were available for as low price as 20 bucks, but when i compare with power saving and ease of use, most turns to headache.
  • Shape and design of keyboard, it is very convinient, it is really easy to use. (Specially for those who love to use TVS Gold style keyboard.)
  • Keyboard is Smooth and soft, it is not making disturbing noice, which seems important when you work during late night.

About price i had purchase for 49.99 USD + Tax

I am personally using these pair of keyboard and mouse from last 3 months and it had made my life so easy that made me share my experience.


10 Keys to a Successful Job Search


Ten Keys to a Successful Job Search

1. Take stock - (Know Yourself)

If you know your strengths and weaknesses and what you want in a career, then you have a much better chance of finding your perfect job. Finding that dream position starts with understanding your personality, values and what drives you. Taking a career and personality assessment is a huge first step towards optimizing your personal career path. TheMyers-Briggs Type Indicator assessment is the most widely used personality instrument. More than 2 million worldwide assessments are performed each year by job seekers, professionals, and organizations, including 89 of the Fortune 100. Take a Free Personality Test now to find out what motivates you and find the perfect job today.

2. Networking - (Know others)

Many jobs are obtained through networking. It is a very important tool for job seekers and is an extremely fast and effective way to find your next job or career. While many employers advertise open positions on internet job boards like Job Bank USA, you should find out about the "hidden job market" as well by talking to as many people as possible and letting them know you are looking for a job.

3. Accomplishment oriented resume - (Know how to write it well)

The purpose of a resume is not to get you a job, but to land an interview. An organized, industry-specific and accomplishment-oriented resume will get employers to take notice. In todays hyper-competitive job market, you simply cannot afford to send out a resume that is less than perfect.

Two Common Yet Easily-Avoidable Resume Mistakes
1. Always use a professional email address on your resume. While footballfan@aol.com may be fine for conversing with friends, it will give employers a negative perception of your level of professionalism and commitment to your job search.

2. If your resume includes an objective statement, it should be geared to both your personal goals as well as the goals of the company. Describing how you can add value to the company will give potentialemployers the impression that your goal is to provide a long-term commitment.

4. Job proposal - (Know your value)

Get the attention of decision-makers at a company through a Job proposal. It's a one or two page "mini business plan" that's intended to get you an interview with the decision-maker of a targeted prospective employer. While a resume tells someone what you have done in the past, a job proposal shows in some detail what you are going to do for the company down the road. Specifically, it lays out how you will help them achieve their vision of success. It generally explains the vision you have for a new product or service, how to enhance an existing program, or why to implement a new process. It may also outline your plan to increase company sales or improve accounts receivable. When you challenge the relevance of traditional job search strategies and begin utilizing tools and techniques that clearly distinguish you from the pack, most anything is possible, including winning a dream job with a great company during a down economy.

5. Industry Knowledge - (Know your market)

During your job search, it is imperative to show initiative and drive while continually looking to improve your industry knowledge. In today's competitive job market, staying up-to-date on your industry is crucial to your future success. To be a truly outstanding business professional, you must not only understand trends and developments in your own industry, but the trends and developments in an average consumer's industry.

6. Research - (Know the players)

There is no substitute for hard work and research. Knowing which companies are hiring in your area is only half the battle. Take your search to another level by getting access to key contacts, decision makers, and hiring managers. Check out sites like Hoovers.com to gain access to these types of lists. You can visit CareerConsultation.com for more information regarding customized research to meet your needs.

7. Interviewing - (Know how to communicate)

The biggest mistake in interviewing is not being fully prepared. It is crucial for job-seekers to use every conceivable means possible to prepare for an interview and to allow ample time to fully prepare. Understand that interviewing is a skill; as with all skills, preparation and practice enhance the quality of that skill. Preparation can make the difference between getting an offer and getting rejected.

Practice Answering These Commonly-Asked Interview Questions:
1. Tell me about yourself.
2. Where do you expect to be in five years?
3. Describe a work-related problem you had to face recently. What did you do to deal with it?
4. What are your strengths? Weaknesses?

8. Marketing - (Know how to sell yourself)

An interactive marketing portfolio of yourself pulls together your accomplishments, education, experience and awards in one place. It is a highly-effective job-hunting tool that you develop that gives employers a complete picture of who you are -– your experience, your education, your accomplishments, your skill sets, and what you have the potential to become -– much more than just a cover letter and resume can provide. You can use your career portfolio in job interviews to showcase a point, to illustrate the depth of your skills and experience, or to use as a tool to get a second interview. Dont forget to setup your portfolio at Job Bank USA. The best kinds of portfolios can be built and distributed to employers through the internet.

9. Background Check - (Know your history)

With thousands of resumes to choose from, employers often select from pre-screened candidates first, as these job seekers appear more serious in their job quest and commitment. Pre-screening by the job seeker saves the employer valuable time and money, and places pre-screened candidates ahead of the competition. For more information on getting a background check, you can take a look in our Career Resources section at Job Bank USA

10. Learning never ends - (Know more)

The investment of time and money in continuing your education sends a powerful message to prospective employers that you are serious about improving your skills and abilities. Employers are more likely to hire candidates that show the desire and commitment for lifelong learning. Whether it's a certificate program, associates, bachelors, or masters degree, there is a program to fit your lifestyle, schedule and budget. To find a school that fits your needs, browse our index of over 200 schools or try out our school matching program.