我有一个奇怪的问题,我有大量的实体,我有CRMSvcUtil生成的XrmSchema.cs在我的crm系统中工作对我来说很不错,特别是在使用查询并将它们转换为实体代码中的对象。此转换方法适用于除一个以外的所有实体,我一直收到System.InvalidCastException:无法为此实体投射“Microsoft.Xrm.Sdk.Entity”类型的对象错误。下面是产生它下面的代码段,它会抛出异常的toList()方法:MS Dynamics CRM System.InvalidCastException
public List<etel_productcharacteristic> RetrieveCharacteristic(Guid characteristicId)
{
using (XrmDataContext context = new XrmDataContext(CRMConnection.OrganizationService))
{
var query = from characteristic in context.etel_productcharacteristicSet
where characteristic.etel_productcharacteristicId == characteristicId && characteristic.statecode.Value == etel_productcharacteristicState.Active
select characteristic;
return query.ToList();
}
}
任何人都可以点我什么可能是错误与此代码。顺便说一下,我在互联网上阅读的所有解决方案都建议使用enableproxy方法。在我的情况下,Enableproxy方法在组织服务被初始化时被调用,所以它看起来不像罪魁祸首。所有其他转换工作正常我的插件 必须有这个错误。
您是否已尝试通过Id检索单个“etel_productcharacteristic”记录?我也会尝试一个后期绑定的查询来查看问题是否位于生成的XrmSchema中。 – Filburt
延迟查询不起作用,但检索单个记录有所帮助。感谢您的建议。 –