我们有Dynamics CRM 20111.在自定义实体上,我们有一个名为new_FlagReported的字段,它是数据类型2选项集。在C#中,我需要将此标志更新为true。
我收集所有需要使用Linq更新的记录,并使用我编码的那个集合:
foreach (var rec in CustomRecs)
{
xrm.ClearChanges();
rec.new_FlagReported = true;
xrm.UpdateObject(rec);
xrm.SaveChanges();
}
但是,赋值为true会产生编译时错误:
“索引的属性'AnonymousType#3.new_FlagReported'无法分配给 - 它是只读的”
我不明白为什么这个字段是只读的。
在这种情况下,匿名类型究竟是什么? 什么是AnonymousType#3而不是任何其他类型? 我的领域是如何变得“匿名”的? 我可以将其重新创建为非匿名吗? 我该如何更新此字段?
谢谢你的帮助。
更新: 这就是我现在所拥有的,没有编译时错误:
var CustomRecs= from cr in xrm.new_customRecordSet
where cr.new_crID.Equals(sg.Id)
select cr;
foreach (var rec in CustomRecs)
{
xrm.MergeOption = MergeOption.OverwriteChanges;
xrm.ClearChanges();
rec.new_FlagReported = true;
xrm.UpdateObject(rec);
xrm.SaveChanges();
}