【发布时间】:2011-08-19 16:37:40
【问题描述】:
我正在阅读 MS CRM 2011 SDK 文档并查看访问实体的两种方法:
OrganizationServiceContext 或 OrganizationServiceProxy。
为什么我会选择一种方法而不是另一种? SDK 对这一点的设计考虑并不清楚。
【问题讨论】:
我正在阅读 MS CRM 2011 SDK 文档并查看访问实体的两种方法:
OrganizationServiceContext 或 OrganizationServiceProxy。
为什么我会选择一种方法而不是另一种? SDK 对这一点的设计考虑并不清楚。
【问题讨论】:
IOrganizationService 是您与 CRM 系统的连接。
在 Microsoft Dynamics CRM 2011 中,为您的组织访问数据和元数据的主要 Web 服务是 IOrganizationService Web 服务。
OrganizationServiceContext 类用作使用早期绑定实体类时创建的数据上下文的基类。看看如何Use the Organization Service Context Class。它使用IOrganizationService 作为底层连接。
【讨论】:
OrganizationServiceContext 包含 CRM 的 LINQ 提供程序。使用它,您可以构建 LINQ 查询,而不是使用 QueryExpression 或 FetchExpressions,如果您使用 IOrganizationService 直接则需要这些查询。
crmsvcutil.exe 可以生成一个继承自 OrganizationServiceContext 的 CRM 组织特定类,在这种情况下,您可以在生成的类上获得 ContactSet、AccountSet 等属性,从而更轻松地编写查询。
您必须拥有 IOrganizationService 实例才能使用 OrganizationServiceContext。
更多详情请见http://msdn.microsoft.com/en-us/library/gg328028.aspx。
【讨论】: