dynamics-crm-2011 - 引用 CodeGeneration.CodeCustomization 对早期绑定(bind)生成的 CRM 实体有何变化?

标签 dynamics-crm-2011 dynamics-crm-online dynamics-crm-2013

看完this SO question ,我注意到 link in the question引用了Microsoft.Xrm.Client.CodeGeneration.CodeCustomization,Microsoft.Xrm.Client.CodeGeneration .

与标准代码生成相比,它有什么优势?根据 LameCoder,它将所有实体更改为从 Microsoft.Xrm.Client.CrmEntity 继承。而不是`Microsoft.Xrm.Sdk.Entity。这会产生哪些变化以及产生了哪些其他变化?

最佳答案

这里是 best site I could currently find关于它的作用:

  • CrmSvcUtil & OrganizationServiceContext enhancements such as lazy loading
  • Simplified Connection Management with Connection Dialog UI
  • Client Side caching extensions
  • Utility Extension functions for common tasks to speed up client development
  • Organization Service Message utility functions to make it easy to call common messages such as BulkDelete, Add Member to Team etc.
  • Objects to support the Microsoft.Xrm.Portal extensions


我可以看到从 CrmEntity 继承的唯一真正的缺点是它需要 Microsoft.Xrm.Client dll 在服务器上被 Gac'd 或 IL 合并到 Entities dll 中。

除了这个缺点之外,我看到它添加了以下功能:
  • 将 INotifyPropertyChanging 和 INotifyPropertyChanged 移到基类中,使生成的代码更小
  • 定义额外的类属性
  • System.Data.Services.Common.DataServiceKeyAttribute
  • System.Data.Services.IgnorePropertiesAttribute (我假设这个通过网络发送的数据较少?)
  • Microsoft.Xrm.Client.Metadata.EntityAttribute(我相信这是用来支持 LazyLoading
  • 选项集属性更改为可为空的整数
  • 货币属性现在是可以为空的小数
  • 将属性值设置为已经存在的值,不会触发属性更改/更改事件
  • SetPrimaryIdAttributeValue 会产生更小的代码。
  • 关于dynamics-crm-2011 - 引用 CodeGeneration.CodeCustomization 对早期绑定(bind)生成的 CRM 实体有何变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21270081/

    相关文章:

    dynamics-crm-online - 实时工作流的自定义工作流事件中缺少跟踪日志

    localization - 在翻译文件外修改 CRM 2011 中的翻译值

    c# - 使用 FetchXML 获取(强类型)相关实体

    dynamics-crm - 注册为 "post operation"的 Dynamics CRM 插件是在数据库事务内部还是外部运行?

    dynamics-crm-2011 - Javascript 函数不会在 crm 2011 中触发更改事件

    javascript - jQuery 函数 .on() 不适用于 "click"事件

    javascript - 为什么我的 PostUpdateOrder 插件执行两次 CRM 2013

    c# - MS CRM 插件的一般错误

    c# - CRM 2011 Pre-Operation Update 相关实体查找字段

    dynamics-crm-2011 - 自定义 CRM 2011 时更改名称