【问题标题】:All oData Web APIs are broken after importing solution导入解决方案后,所有 oData Web API 均损坏
【发布时间】:2016-07-27 08:21:54
【问题描述】:

在本地使用 Dynamics CRM 2016,在组织中导入非托管解决方案后(通过 Web API Action ImportSolution 然后 PublishAllXml),所有 Web API 都停止工作,并返回以下内容:

(例如:https://MyDynamicsServer/MyOrganization/api/data/v8.0/contacts

{
  "Message": "Object reference not set to an instance of an object.",
  "ExceptionMessage": "Object reference not set to an instance of an object.",
  "ExceptionType": "System.NullReferenceException",
  "StackTrace": "   at Microsoft.OData.Edm.ExtensionMethods.AddAlternateKeyAnnotation(EdmModel model, IEdmEntityType type, IDictionary`2 alternateKey)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataModelProvider.DeclareAlternateKeys(EdmEntityType entityType, EntityMetadata entityMetadata, EdmModel edmModel)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataModelProvider.AddEntitiesToModel(ICollection`1 edmEntitySets, EdmModel model, EdmEntityContainer container)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataModelProvider.AddEntities(Dictionary`2 edmModels, Dictionary`2 containers, DynamicMetadataCache cache)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataModelProvider.InitializeEdmModels(DynamicMetadataCache cache)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataModelProvider.GetEdmModel(ModelVisibility requestedEdmType)\r\n   at Microsoft.Crm.Extensibility.OData.CrmEdmModel.get_InternalEdmModel()\r\n   at Microsoft.Crm.Extensibility.OData.CrmEdmModel.get_EntityContainer()\r\n   at Microsoft.OData.Edm.ExtensionMethods.FindDeclaredEntitySet(IEdmModel model, String qualifiedName)\r\n   at Microsoft.OData.Edm.ExtensionMethods.FindDeclaredNavigationSource(IEdmModel model, String qualifiedName)\r\n   at Microsoft.OData.Core.UriParser.Parsers.ODataPathParser.TryCreateSegmentForNavigationSource(String identifier, String parenthesisExpression)\r\n   at Microsoft.OData.Core.UriParser.Parsers.ODataPathParser.CreateFirstSegment(String segmentText)\r\n   at Microsoft.OData.Core.UriParser.Parsers.ODataPathParser.ParsePath(ICollection`1 segments)\r\n   at Microsoft.OData.Core.UriParser.Parsers.ODataPathFactory.BindPath(ICollection`1 segments, ODataUriParserConfiguration configuration)\r\n   at Microsoft.OData.Core.UriParser.ODataUriParser.Initialize()\r\n   at System.Web.OData.Routing.DefaultODataPathHandler.Parse(IEdmModel model, String serviceRoot, String odataPath, ODataUriResolverSetttings resolverSettings, Boolean enableUriTemplateParsing)\r\n   at System.Web.OData.Routing.DefaultODataPathHandler.Parse(IEdmModel model, String serviceRoot, String odataPath)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataPathHandler.Parse(IEdmModel model, String serviceRoot, String odataPath)\r\n   at System.Web.OData.Routing.ODataPathRouteConstraint.Match(HttpRequestMessage request, IHttpRoute route, String parameterName, IDictionary`2 values, HttpRouteDirection routeDirection)\r\n   at System.Web.Http.Routing.HttpRoute.ProcessConstraint(HttpRequestMessage request, Object constraint, String parameterName, HttpRouteValueDictionary values, HttpRouteDirection routeDirection)\r\n   at System.Web.Http.Routing.HttpRoute.ProcessConstraints(HttpRequestMessage request, HttpRouteValueDictionary values, HttpRouteDirection routeDirection)\r\n   at System.Web.Http.Routing.HttpRoute.GetRouteData(String virtualPathRoot, HttpRequestMessage request)\r\n   at System.Web.Http.WebHost.Routing.HttpWebRoute.GetRouteData(HttpContextBase httpContext)",
  "ErrorCode": 500
}

这很关键,因为它使我们的自定义无法使用! (并且还阻止我们自动导入自定义项,因为此过程使用 Web API)

请注意,相同的解决方案已以相同的方式导入另一个组织,没有问题...

通过 UI 导入解决方案仍然有效,但这完全违背了我们自动化管道的意义......

有人遇到过这个问题吗?我应该去哪里看?

(注意:我也在这里发布了这个问题:https://community.dynamics.com/crm/f/117/t/206996

【问题讨论】:

  • 您可能需要为此向 MSFT 开一张支持票
  • 同意马特·迪林的观点。

标签: dynamics-crm dynamics-crm-2016 dynamics-crm-webapi


【解决方案1】:

您的 OData 似乎未启用或不受支持。请通过

Settings => Customizations => Developer Resources

【讨论】:

    猜你喜欢
    • 2011-04-21
    • 1970-01-01
    • 2015-08-26
    • 1970-01-01
    • 2019-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    相关资源
    最近更新 更多