My question is how to assign the DataType value for columns of special SQL Types like, uniqueidentifier/nvarchar/datetime/varbinary(max) — I did not find a mapping between .NET data type and such 4 types of SQL column data type?
Here is a sample, which shows we need to assign the DataType (this sample maps .NET type to SQL column data type) of each column of the DataTable.
http://msdn.microsoft.com/en-us/library/system.data.datatable.aspx
Assuming you are talking about the DataType property on the DataColumn class, this is how you would map the types:
You can find the full list of mappings here:
http://msdn.microsoft.com/en-us/library/ms131092.aspx