如何为通常为选项集的实体属性自动生成早期绑定的枚举属性?

时间:2013-04-18 19:44:49

标签: c# dynamics-crm-2011 code-generation

为CRM实体生成早期绑定实体类非常简单。为OptionSets生成枚举也很简单。为键入正确的枚举的实体生成OptionSet枚举属性并不简单,CrmSrvUtil.exe当前不支持。如果您希望能够使用枚举来填充选项集值,则必须不断编写如下代码:

contact.Address1_AddressTypeCode = new OptionSetValue((int)contact_address1_addresstypecode.Home);

如何为OptionSetValues生成枚举特定属性,因此我可以编写如下代码:

contact.Address1_AddressTypeCode = contact_address1_addresstypecode.Home;

所以Address1_AddressTypeCode's类型为contact_address1_addresstypecode

2 个答案:

答案 0 :(得分:4)

我之前的回答很糟糕......请改用:Early Bound Generator for CRM Disclamer:我也写过。

答案 1 :(得分:2)

我创建了一个Entity OptionSet Enum Mapper Utility,为早期绑定的实体自动生成Enum特定类型的属性。您可以在此处下载源代码和可执行文件:

Programmatically Generating Properties for OptionSet Enums

它在构建标准选项set / enum dll期间基本上作为预构建事件的一部分运行,生成.cs文件,该文件包含需要为其生成Enum属性的任何类的部分类。