获取 Dynamics CRM 联系人 parentcustomerid
Get Dynamics CRM contact parentcustomerid
我需要在 Dynamics CRM 中检索联系人的全名和父帐户。
我正在使用以下代码:
ColumnSet cols = new ColumnSet(new String[] { "fullname", "parentcustomerid" });
Entity retrContact = (Entity)orgService.Retrieve("contact", contactID, cols);
fullName = retrContact.Attributes["fullname"];
parentAccount = retrContact.Attributes["parentcustomerid"];
nameStr = fullName.ToString();
companyStr = parentAccount.ToString();
我的问题是 companyStr 得到的是 "Microsoft.Xrm.Sdk.EntityReference" 而不是 Name 值。
parentAccount 包含以下内容:
LogicalName "account" string
Name "Microsoft Corp" string
RowVersion null string
如何获取名称字符串?
您可能应该从服务器获取 parentAccount(请参阅 EntityReference.Name Property
This property is not automatically populated unless the EntityReference object has been retrieved from the server.
例如您应该使用 Id parentcustomerid 从服务器获取数据,有点像
Entity Account = service.Retrieve(Account.EntityLogicalName, parentAccount.Id, new ColumnSet(true));
您肯定可以将 Account.EntityLogicalName
替换为 "account"
字符串。
parentcustomerid
对象是一个具有您要查找的名称的 EntityReference
对象。此代码有效:
ColumnSet cols = new ColumnSet(new string[] { "fullname", "parentcustomerid" });
Entity retrContact = (Entity)orgService.Retrieve("contact", new Guid("{9DF2ACC2-0212-E611-80E4-6C3BE5A83B1C}"), cols);
var parentAccount = (EntityReference)retrContact.Attributes["parentcustomerid"];
var companyStr = parentAccount.Name;
我需要在 Dynamics CRM 中检索联系人的全名和父帐户。 我正在使用以下代码:
ColumnSet cols = new ColumnSet(new String[] { "fullname", "parentcustomerid" });
Entity retrContact = (Entity)orgService.Retrieve("contact", contactID, cols);
fullName = retrContact.Attributes["fullname"];
parentAccount = retrContact.Attributes["parentcustomerid"];
nameStr = fullName.ToString();
companyStr = parentAccount.ToString();
我的问题是 companyStr 得到的是 "Microsoft.Xrm.Sdk.EntityReference" 而不是 Name 值。 parentAccount 包含以下内容:
LogicalName "account" string
Name "Microsoft Corp" string
RowVersion null string
如何获取名称字符串?
您可能应该从服务器获取 parentAccount(请参阅 EntityReference.Name Property
This property is not automatically populated unless the EntityReference object has been retrieved from the server.
例如您应该使用 Id parentcustomerid 从服务器获取数据,有点像
Entity Account = service.Retrieve(Account.EntityLogicalName, parentAccount.Id, new ColumnSet(true));
您肯定可以将 Account.EntityLogicalName
替换为 "account"
字符串。
parentcustomerid
对象是一个具有您要查找的名称的 EntityReference
对象。此代码有效:
ColumnSet cols = new ColumnSet(new string[] { "fullname", "parentcustomerid" });
Entity retrContact = (Entity)orgService.Retrieve("contact", new Guid("{9DF2ACC2-0212-E611-80E4-6C3BE5A83B1C}"), cols);
var parentAccount = (EntityReference)retrContact.Attributes["parentcustomerid"];
var companyStr = parentAccount.Name;