使用后期绑定对CRM SDK进行编码时,使用GetAttributeValue方法访问属性和直接在Entity对象上访问属性之间的区别是什么?
我仍然是.NET和c#的新手,所以如果它是一个简单的语言/平台理解问题,那么道歉但也许这就是为什么我找不到差异的原因。
答案 0 :(得分:5)
entity["myattributename"]
将抛出异常。它也会将其作为对象返回。
entity.GetAttributeValue<T>
将返回该类型的默认值,如果它不在实体的属性集合中,则不会抛出异常。
答案 1 :(得分:0)
entity.GetAttributeValue<T>
将返回一个可以在LINQ表达式中使用的IEnumerable对象。这可以大大加快开发时间并减少代码逻辑行。根据Daryl的回应(良好的解释here :)。