1

我敢肯定有人可以在这里帮助我,我真的很想知道为什么下面的代码不起作用。基本上我有一个自定义实体,它有一个列表(以及列表中的所有列表成员)和我的自定义实体(在创建后注册)我创建另一个列表,将所有这些列表成员导入另一个列表。现在我需要检索每个列表成员的 entityID(以便我添加它们)我的代码如下(仅用于一个列表成员用于测试目的):

// GET LIST MEMBER 
QueryByAttribute query = new QueryByAttribute("listmember");
query.AddAttributeValue("listid", m_list_ID.Id);
ColumnSet cs = new ColumnSet();
cs.AddColumns("entityid");
query.ColumnSet = cs;
EntityCollection entityCollection = service.RetrieveMultiple(query);


Guid g = Guid.Empty;
g = (Guid)entityCollection.Entities[0].Attributes["entityid"];

为了检查 guid,我将另一个字段上的 GUID 作为字符串输出,只是为了检查它是否正确,但是当我尝试保存表单时,我收到错误“System.InvalidCastException: Specified cast is not valid.”。另一方面,我确信它会在我进行计数时检索实体,并且它显示了正确数量的实体,但由于某种原因不允许我获取 entityId 属性。如果有人能解释这里发生了什么,将不胜感激。预先感谢。

4

1 回答 1

0

实体的entityid属性是 type 。如果您将演员更改为,则可以通过属性引用 GUID 。listmemberEntityReferenceEntityReferenceId

于 2012-05-22T15:50:55.983 回答