语境
我正在使用crmsvcutil生成早期绑定实体。我还利用实体名称字符串常量MyEntity.EntityLogicalName
作为示例,例如以下语句(使用备用键):
var reference = new EntityReference(MyEntity.EntityLogicalName, "my_attribute_name", myValue)
问题
我想消除语句中的“ my_attribute_name”字符串文字。我怎样才能做到这一点?
不幸的是,我在生成的C#模型中找不到它。
想念我什么?如果没有,也许是crmsvcutil的扩展(类似于optionsset生成器sameple?
要回答该问题,可以使用C#6nameof()
表达式获取属性的名称。如果将名称转换为小写,则会以逻辑名称结尾:
var logicalName = nameof(MyEntity.MyAttributeValue).ToLower();
话虽这么说,我很少发现自己必须做这样的事情。通常,您可以使用Entity.ToEntityReference()
更强类型的方法。
另外,您使用的构造函数EntityReference
仅用于备用键(否则,将只使用带有a和a的构造函数)string
Guid
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句