Dynamics CRM 2011 编程系列(24):在插件中使用早期绑定

来源:互联网 发布:nginx解析其他网站 编辑:程序博客网 时间:2024/05/21 10:11

    在日常的开发中,免不了需要使用早期绑定来解决些问题。目前我们可以使用两种绑定方法:早期绑定和晚期绑定。至于他们之间的差异不好评价,各有各的特点,现在我们来看看怎么在插件中来使用早期绑定。

    步骤如下:

图1

图2

图3

图4

图5

图6

图7

图8

 

插件代码

using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Xrm.Sdk;using Microsoft.Xrm.Sdk.Messages;using Microsoft.Xrm.Sdk.Query;using CRMENTITY;namespace Plugin23{    public class TestEarlyBound:IPlugin    {        public void Execute(IServiceProvider serviceProvider)        {            IOrganizationServiceFactory factory=(IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));            IOrganizationService service=factory.CreateOrganizationService(null);            QueryExpression query = new QueryExpression();            query.ColumnSet = new ColumnSet { AllColumns = true };            query.EntityName = Contact.EntityLogicalName;            EntityCollection result = service.RetrieveMultiple(query);            string msg = string.Empty;            foreach (var c in result.Entities)            {                msg += c["lastname"].ToString()+"\n";            }            throw new InvalidPluginExecutionException(msg);        }    }}


小结

    这里我没有把用“crmsvcutil.exe” 工具导出来的代码嵌入到插件里面中,而是将它制作成了一个DLL文件,并把它放在Bin目录中。这么做至少有以下优点:

    1.方便维护

    2.避免冲突

 

原创粉丝点击