かなり軽量な.NETコアプロジェクトを含むWeb APIソリューション(.NET 4.6をターゲットにしています)があります。 .NET CoreプロジェクトをNuGetパッケージとしてパッケージ化し、Web APIプロジェクトにインストールしました。型引数 'System.Net.Http.Headers.MediaTypeHeaderValue'が型パラメータ 'T'の制約に違反しています
すべてがうまくいきますが、実行すると、アプリケーションの初期化時に次の例外が発生します。
Method System.Net.Http.CloneableExtensions.Clone: type argument 'System.Net.Http.Headers.MediaTypeHeaderValue' violates the constraint of type parameter 'T'.
[VerificationException: Method System.Net.Http.CloneableExtensions.Clone: type argument 'System.Net.Http.Headers.MediaTypeHeaderValue' violates the constraint of type parameter 'T'.]
System.Net.Http.Formatting.MediaTypeConstants.get_ApplicationJsonMediaType() +0
System.Net.Http.Formatting.JsonMediaTypeFormatter..ctor() +64
System.Net.Http.Formatting.MediaTypeFormatterCollection.CreateDefaultFormatters() +41
System.Web.Http.HttpConfiguration.DefaultFormatters(HttpConfiguration config) +26
System.Web.Http.HttpConfiguration..ctor(HttpRouteCollection routes) +214
System.Web.Http.GlobalConfiguration.<CreateConfiguration>b__0() +60
System.Lazy`1.CreateValue() +411
System.Lazy`1.LazyInitValue() +183
System.Lazy`1.get_Value() +75
System.Web.Http.GlobalConfiguration.get_Configuration() +27
Runpath.Platform.Web.DependencyResolution.StructureMapBootStrapper.Initialise() in C:\Code3\Runpath\Markets\Platform\Main - Copy\Runpath.Platform.Web\DependencyResolution\StructureMapBootStrapper.cs:15
Runpath.Platform.Web.WebApiApplication.Application_Start() in C:\Code3\Runpath\Markets\Platform\Main - Copy\Runpath.Platform.Web\Global.asax.cs:30
[HttpException (0x80004005): Method System.Net.Http.CloneableExtensions.Clone: type argument 'System.Net.Http.Headers.MediaTypeHeaderValue' violates the constraint of type parameter 'T'.]
System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +493
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +118
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +176
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +364
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +303
[HttpException (0x80004005): Method System.Net.Http.CloneableExtensions.Clone: type argument 'System.Net.Http.Headers.MediaTypeHeaderValue' violates the constraint of type parameter 'T'.]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +770
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +95
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +195
私は、オブジェクトブラウザで確認してきた、とMediaTypeHeaderValue
はICloneable
を実装しています。これを引き起こす可能性のあるアイデアは何ですか?
また、.NET Coreプロジェクトを.NET 4.6のバージョンに置き換えても問題ありません。ジョナサンの応答を1として
編集
、私はそれは.NET 4.6のためSystem.Net.Http 4.0.0.0を使用するようにproject.jsonを更新することによって、作業を取得するために管理:
{
"version": "1.0.3-*",
"dependencies": {
"NETStandard.Library": "1.6.0"
},
"frameworks": {
"net46": {
"dependencies": {
"System.Net.Http": "4.0.0"
}
},
"netstandard1.6": {
"imports": "dnxcore50"
}
}
}
4.0.0に設定するか、ここでは解決できない4.6を.NETに行く
希望....私は、オンラインでたくさん読んで、私はここでそれを修正することはできません。手伝って頂けますか? –
この問題に関して何らかの進展がありましたか? –