又是一些基础讨论问题,请高手们指教

y63964632 2008-11-19 03:51:21
一个关于取数据库中数据时的值转换的问题:
表中的字段是通过DataTable取到的值,

当给一个表实体赋值的时候:

如:
Entity e=new Entity();
e.id=int.Parse(dt.Rows[0]["id"].Tostring())

如果必添字段的话,可以如上所做~
如果有空值,则需要判断

我是这么做的:

if(!int.TryParsr(dt.Rows[0]["intField"].ToString(),out e.intField)){}

条件中不 做任何操作!

这么做目前没有发现什么问题

问题:
1, 我那么写有错么?应该如何写更合适点?
2,有其他更适合的方法进行数据库中数据和实体中数据之间的赋值问题么?(主要只空字段之间的转换)


...全文
57 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bbbbbb888888 2008-11-19
  • 打赏
  • 举报
回复
来晚了...
shllove 2008-11-19
  • 打赏
  • 举报
回复
LZ可以通过写几个函数来取值
e.g

GetInt(object o);
GetString(object o);
GetDateTime(object o);
...
等等类似函数,
具体逻辑可以在函数里判断,
个人意见,可以参考下。
y63964632 2008-11-19
  • 打赏
  • 举报
回复
结贴~
keguoquan 2008-11-19
  • 打赏
  • 举报
回复
.......
y63964632 2008-11-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 chinaicm 的回复:]
条件中不 做任何操作!
那你就不需要写if啊,直接写
int.TryParsr(dt.Rows[0]["intField"].ToString(),out e.intField)
[/Quote]

受教~ 以前用这个做return ,有点死板乱套 ~嘿嘿
chinaicm 2008-11-19
  • 打赏
  • 举报
回复
条件中不 做任何操作!
那你就不需要写if啊,直接写
int.TryParsr(dt.Rows[0]["intField"].ToString(),out e.intField)

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧