动态CRM中如何使用查询表达式提取插件dll

本文关键字:表达式 提取 插件 dll 查询表 查询 CRM 何使用 动态 | 更新日期: 2023-09-27 18:11:28

我需要使用查询表达式提取插件dll。我知道我可以使用数据库做到这一点,可以从"PluginAssemblyBase"表和"内容"列中提取它。无论如何,我可以提取它使用查询表达式?

动态CRM中如何使用查询表达式提取插件dll

必须获取'content'属性并使用'FromBase64String'方法获取原始字节

String connectionString = @"AuthType=AD;Url=http://xyz/CRO; Domain=DEVDOMAIN; Username=user01; Password=12345";
CrmServiceClient conn = new CrmServiceClient(connectionString);
IOrganizationService orgService = conn.OrganizationWebProxyClient != null ? (IOrganizationService)conn.OrganizationWebProxyClient : (IOrganizationService)conn.OrganizationServiceProxy;
QueryExpression qExpr = new QueryExpression("pluginassembly") { ColumnSet = new ColumnSet(new string[] { "pluginassemblyid", "content" }) };
qExpr.Criteria.AddCondition("name", ConditionOperator.Equal, "YourAssemblyName");
EntityCollection entColl = orgService.RetrieveMultiple(qExpr);
Byte[] data = Convert.FromBase64String((String)entColl[0]["content"]);