The codegen namespace gives you fine-grained control of a typed DataSet. By adding codegen attributes, you can configure the names that are used for methods, properties, relations, and constraints. When using the codegen namespace, it should be imported as shown:
<xs:schema id="DataSetName" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:codegen="urn:schemas-microsoft-com:xml-msprop" >
|
Table B-1 indicates where the various codegen attributes can be used and what they accomplish. Table B-2 briefly describes each attribute.
Typed DataSet object/method/event |
Default name |
codegen attribute |
---|---|---|
DataTable |
TableNameDataTable |
typedPlural |
DataTable Methods |
NewTableNameRow AddTableNameRow DeleteTableNameRow |
typedName |
DataRowCollection |
TableName |
typedPlural |
DataRow |
TableNameRow |
typedName |
DataColumn |
DataTable.ColumnNameColumn DataRow.ColumnName |
typedName |
Property |
PropertyName |
typedName |
Child Accessor |
GetChildTableNameRows |
typedChildren |
Parent Accessor |
TableNameRow |
typedParent |
DataSet Events |
TableNameRowChangeEvent TableNameRowChangeEventHandler |
typedName |
Attribute |
Description |
---|---|
typedName |
Name of the object in the generated class. |
typedPlural |
The name of the object in a collection of objects. For example, if you specify Category for typedName and Categories for typedPlural, you generate a Categories collection and a Category row (instead of a CategoriesRow). |
typedParent |
Name of the object when referred to in a parent relationship. Typed datasets automatically generate methods that provide access to parent and child rows. For example, if you specify Category for the typedParent of an order record, use a Order.Category( ) method instead of Order.GetCategoriesRow( ). |
typedChildren |
Name of the method to return objects from a child relationship. For example, if you specify Order for the typedChild of a category record, use a Category.Orders( ) method instead of Category.GetOrdersRows( ). |
nullValue |
Indicates the behavior when null values are encountered. See Table B-3 for possible values. |
Finally, Table B-3 identifies possible values for the nullValue attribute.
Value |
Description |
---|---|
[Replacement Value] |
Specifies a value to be returned. For example, use nullValue="0" to set null integer fields to 0. |
_throw |
Throws an exception when a null value is encountered. This is the default. |
_null |
Returns a null reference (or throws an exception if a primitive type is encountered). |
_empty |
For strings, returns String.Empty. For objects, returns the default uninitialized object (created from the zero-parameter constructor). If a primitive type is encountered, ADO.NET generates an exception. |