2

.NET 4.5 を使用して単純な VB .NET Web API プロジェクトを開発しました

このプロジェクトは問題なく動作していましたが、AttributeRouting nuget パッケージをインストールすることにしました。このパッケージをインストールすると、すべての関数で次の例外が発生するようです。

ルート テンプレート 'Company' を持つルートの制約エントリ 'inboundHttpMethod' は、文字列値を持つか、'IHttpRouteConstraint' を実装する型である必要があります。

このメッセージの「Company」は、単純に 1 つのオブジェクトを返す単純な GET メソッドへのルート名です。すべてのルートでこのエラー メッセージが表示されます。スタックトレースは次のとおりです。

[InvalidOperationException: ルート テンプレート 'Company/{Id}' を持つルートの制約エントリ 'inboundHttpMethod' は、文字列値を持つか、'IHttpRouteConstraint' を実装する型である必要があります。]
System.Web.Http.Routing.HttpRoute.ProcessConstraint (HttpRequestMessage リクエスト、オブジェクト制約、文字列 parameterName、HttpRouteValueDictionary 値、HttpRouteDirection routeDirection) +346 System.Web.Http.Routing.HttpRoute.ProcessConstraints(HttpRequestMessage リクエスト、HttpRouteValueDictionary 値、HttpRouteDirection routeDirection) +201
System.Web.Http.Routing.HttpRoute .GetRouteData(String virtualPathRoot, HttpRequestMessage リクエスト) +430
AttributeRouting.Web.Http.Framework.HttpAttributeRoute.GetRouteData(String virtualPathRoot,HttpRequestMessage リクエスト) +250
System.Web.Http.WebHost.Routing.HttpWebRoute.GetRouteData(HttpContextBase httpContext) +191
System.Web.Routing.RouteCollection.GetRouteData(HttpContextBase httpContext) +233
System.Web.Routing.UrlRoutingModule.PostResolveRequestCache(HttpContextBase コンテキスト) +60
システム.Web.Routing.UrlRoutingModule.OnApplicationPostResolveRequestCache(オブジェクト送信者, EventArgs e) +82
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +136 System.Web.HttpApplication.ExecuteStep(IExecutionStep ステップ, Boolean& completedSynchronously) +69

私の問題を説明する次のスレッドを見つけました: https://github.com/mccalltd/AttributeRouting/issues/191

残念ながら、この修正は役に立たないようです: https://github.com/mccalltd/AttributeRouting/issues/191#issuecomment-13814025

これを修正する方法についてのアイデアはありますか?

4

1 に答える 1