关于entityFramework ObjectResult 修改的问题

janetLeng 2011-04-27 03:53:23

string esql = "select a.name.a.age.a.sex from user as a";
ObContent ob = new Obcontent();
ObjectQuery<DbDataRecord> sql = ob.CreateQuery(esql);
ObjectResult<DbDataRecord> result = Execute(MergeOption.OverwriteChanges);
foreach(DbDataRecord temp in result)
{
temp["age"] = 10; //复制语句出错 DbDataRecord 属性 没有set方法 只能只读
}

有没有办法 对DbDataRecord 的内容修改啊 急等。。。。。。。

还有一种方法是 利用反射 DbDataRecord 转换成datatable 会的请指教
...全文
93 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
janetLeng 2011-05-27
  • 打赏
  • 举报
回复
这个方法感觉用过 当初好像也是不可改变
问题已经用别的方法解决了
不过好事谢谢了
刚刚随便试了一下 好像不报那个错了
以后如果在用到ObjectQuery
再试试这个方法

kingdom_0 2011-05-20
  • 打赏
  • 举报
回复
手写的代码,给你个思路
for(int i=0;i<result.Length;i++)
{
for(int j=0;j<result(i).FieldCount;j++)
{
if(result(i)["name"]=="张三")
{
result(i)["age"]="50";
}
}
}
janetLeng 2011-04-27
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 q107770540 的回复:]
用for代替foreach即可
[/Quote]

如何用for循环 请举个例子
刚才写了一下 循环不出来

如果名字等于‘张三’ 就让 age=50

如何循环 谢谢
q107770540 2011-04-27
  • 打赏
  • 举报
回复
用for代替foreach即可

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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