【发布时间】:2018-08-23 05:16:03
【问题描述】:
尝试在 .NET Core 2.0 项目中使用 Microsoft Dynamics 365 SDK Core Assemblies 时,运行时仅由 using Microsoft.Xrm.Sdk 发生以下错误:
TypeLoadException:无法加载类型 'System.ServiceModel.Description.MetadataConversionError' 来自 程序集'System.ServiceModel,版本=4.0.0.0,文化=中性, PublicKeyToken=b77a5c561934e089'。
看起来核心程序集 (Microsoft.Xrm.Sdk.Client) 可能根本不兼容 ~net4x 以外的任何东西。
是否有任何明显的方法来解决此错误或在目标netcoreapp2.0 的上下文中加载Microsoft.Xrm.Sdk 所需的WCF System.ServiceModel 类/接口?是否可以使用
Microsoft.Windows.Compatibility 弥合差距?看起来 Microsoft.Windows.Compatibility 包 documentation 表示 Windows Communication Foundation (WCF) 类/接口是“可用的”。如何使用兼容包加载System.ServiceModel.Description?
感谢您提供的任何帮助!
【问题讨论】:
-
SDK 肯定不兼容 dotnet core。为什么不直接使用 4.5.2?或者考虑 3rd 方 Dynamics WebApi 助手\代理,例如 github.com/davidyack/Xrm.Tools.CRMWebAPI
-
我们的目标是利用 .NET Core 作为微服务的性能和可移植性。 CRMWebApi 和 ADAL 可能根本不是一个选项,因为目标 CRM 不在 Azure Active Directory 上。据我所知,客户端凭据流只能在 Dynamics 上下文中与 Azure Active Directory 结合使用。
标签: c# .net .net-core dynamics-crm