DataSet 快捷赋值实体类

通过数据库SQL操作,直接生成C# DataSet赋值实体类

优点:通过数据库生成赋值实体类代码操作,可避免手动赋值出现代码错误及赋值代码编写效率缓慢问题 

SELECT
	CONCAT(
		'if(',CONCAT('ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString()'),' != ""){',
	CASE
			DATA_TYPE 
			WHEN 'bigint' THEN
	  	CONCAT('datatb1.',COLUMN_NAME,' = Convert.ToInt32(ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString());')
			WHEN 'int' THEN
			CONCAT('datatb1.',COLUMN_NAME,' = Convert.ToInt32(ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString());')
			WHEN 'tinyint' THEN
			CONCAT('datatb1.',COLUMN_NAME,'  = Convert.ToInt32(ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString());')
			WHEN 'varchar' THEN
			CONCAT('datatb1.',COLUMN_NAME,'  = ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString();')
			WHEN 'varbinary' THEN
		  CONCAT('datatb1.',COLUMN_NAME,'  = ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString();')
			WHEN 'text' THEN
		  CONCAT('datatb1.',COLUMN_NAME,'  = ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString();')
			WHEN 'char' THEN
		CONCAT('datatb1.',COLUMN_NAME,'  = ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString());' )
			WHEN 'datetime' THEN
		  CONCAT('datatb1.',COLUMN_NAME,'  = Convert.ToDateTime(ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString());')
			WHEN 'bit' THEN
			CONCAT('datatb1.',COLUMN_NAME,'  = Convert.ToBoolean(ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString());' )
			WHEN 'decimal' THEN
			CONCAT('datatb1.',COLUMN_NAME,'  = Convert.Toecimal(ds.Tables[0].Rows[i][','"',COLUMN_NAME,'"','].ToString());' )
		END,
		'}' 
) AS Remark 
FROM
	information_schema.COLUMNS 
WHERE
	TABLE_SCHEMA = '数据库名称' 
	AND TABLE_NAME = '需要赋值实体类代码表名称';

 代码执行效果如下

Remark详细内容: 

if(ds.Tables[0].Rows[i]["tid"].ToString() != ""){datatb1.tid = Convert.ToInt32(ds.Tables[0].Rows[i]["tid"].ToString());}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值