Introduction:
In this article,i am going to explain about how to build a typed datasets in asp.net application and it’s benefits.
Main:
A typed DataSet is a strongly-typed container for collections of business entity data and inherits from the System.Data.DataSet class. However, unlike the standard DataSet that features late binding and weak typing, typed DataSets provide strongly-typed access to data. This means that they expose table, column, and relation objects as named properties, rather than generic collection elements. Essentially, you can write code as MyRow.ClientName, as opposed to MyRow["ClientName"].
Typed DataSets also give you the ability to use IntelliSense for statement completion and type checking at compile time. In the context of reporting, they aid in data-driven report design and provide an excellent form of self-documentation of stored procedure result sets. Also (as you’ll see in the next chapter), when you need further massaged and summarized result sets, typed DataSets add a level of efficiency and structure to the code you write. Typed DataSets also simplify data binding. Several of the visual designers in Visual Studio 2005 are capable of reading typed DataSet definitions, which simplifies the process of constructing user interfaces. And last but certainly not least, typed DataSets improve your productivity when building reports with Crystal Reports.
Creating a Typed Dataset manually,
To create a typed DataSet manually, navigate to the project that stores the typed DataSets, right-click, and choose Add ? New Item. Visual Studio will display a dialog box like the below, where you can select DataSet as the installed template and enter the name.

Some main differences between typed and untyped datasets,
Typed DataSets give you the ability to use IntelliSense for statement completion and type checking at compile time.
Typed DataSets also make it easy to define default column values when you add new DataRows.
If a typed DataSet contains table relations, the XML Schema Definition tool adds methods to the typed DataSet class for traversing hierarchical data.
Less code to write because the typed DataSet class contains generated code for building the schema and creating the necessary table, column, row, and relation objects. The code you do have to write can be cleaner, more compact, and easier to maintain.
Null Value Handling
Add a note hereWorking with null values is a little easier when using typed DataSets. Each typed DataRow contains a method to check whether a column value is null: MyRow.IsAddressNull(). The DataRow also contains a second method to set a column value to null: MyRow.SetAddressNull().
Conclusion:
Hope this helps,
Happy coding.

Terrific work! This is the type of information that should be shared around the web. Shame on the search engines for not positioning this post higher!