如何从代码中的CRM元数据源获取数据项列表列表?
我有像
这样的CRm元数据源<crm:CrmMetadataDataSource ID="dsquestionOptionset" runat="server" EntityName="contact"
AttributeName="securityquestion"/>
在html中。
我想从数据源获取代码中的数据项列表。
“securityquestion”是一个整数值,它链接到一个选项集。
我试过
var listOfItems=dsquestionOptionset.Items;
但不可能
感谢任何帮助
Vinu
答案 0 :(得分:3)
您需要查询元数据。一个例子(从这里:http://msdn.microsoft.com/en-us/library/gg509035.aspx)将是这样的:
RetrieveAttributeRequest retrieveAttributeRequest =
new RetrieveAttributeRequest
{
EntityLogicalName = Contact.EntityLogicalName,
LogicalName = "new_picklist",
RetrieveAsIfPublished = true
};
// Execute the request.
RetrieveAttributeResponse retrieveAttributeResponse =
(RetrieveAttributeResponse)_serviceProxy.Execute(
retrieveAttributeRequest);
// Access the retrieved attribute.
PicklistAttributeMetadata retrievedPicklistAttributeMetadata =
(PicklistAttributeMetadata)
retrieveAttributeResponse.AttributeMetadata;
// Get the current options list for the retrieved attribute.
OptionMetadata[] optionList =
retrievedPicklistAttributeMetadata.OptionSet.Options.ToArray();