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

How to extract plugin dll using query expression in dynamics CRM

我需要使用查询表达式提取插件 dll。我知道我可以使用数据库来完成它,并且可以从 "PluginAssemblyBase" table 和 "content" 列中提取它。无论如何我可以使用查询表达式提取它吗?

您必须获取 '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"]);