select 'row.' + COLUMN_NAME + ' = ' + IIF(DATA_TYPE = 'nvarchar','reader["'+COLUMN_NAME+'"] as string','') + IIF(DATA_TYPE = 'uniqueidentifier' and Is_nullable = 'NO','Guid.Parse(reader["'+COLUMN_NAME+'"].ToString())','') + IIF(DATA_TYPE = 'uniqueidentifier' and Is_nullable = 'YES','reader["'+COLUMN_NAME+'"].ToString() != string.Empty ? Guid.Parse(reader["'+COLUMN_NAME+'"].ToString()) : (Guid?)null','') + IIF(DATA_TYPE = 'bit' and Is_nullable = 'NO','bool.Parse(reader["'+COLUMN_NAME+'"].ToString())','') + IIF(DATA_TYPE = 'bit' and Is_nullable = 'YES','reader["'+COLUMN_NAME+'"].ToString() != string.Empty ? bool.Parse(reader["'+COLUMN_NAME+'"].ToString()) : (bool?)null','') + IIF(DATA_TYPE = 'int' and Is_nullable = 'NO','int.Parse(reader["'+COLUMN_NAME+'"].ToString())','') + IIF(DATA_TYPE = 'int' and Is_nullable = 'YES','reader["'+COLUMN_NAME+'"].ToString() != string.Empty ? int.Parse(reader["'+COLUMN_NAME+'"].ToString()) : (int?)null','') + IIF(DATA_TYPE = 'timestamp','reader["'+COLUMN_NAME+'"] as byte[]','') -- another types add here +';' from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = '@TABLE_NAME'
Thứ Năm, 9 tháng 3, 2017
Generate mapping code for converting DataReader into DTO
Đăng ký:
Đăng Nhận xét
(
Atom
)
Không có nhận xét nào :
Đăng nhận xét