私はMono 2.10.8.1でUbuntu 10.04で動作する新しいASP.NET Web APIベータ版(VS 2010デフォルトWeb APIプロジェクト)を入手しようとしています。残念ながら私はこれまでのすべての試みで悲惨に失敗しました。ASP.NET Web API(ベータ版)は最新のMono(安定版)で動作しますか?
System.TypeLoadException: Could not load type 'RestTest.Controllers.ValuesController' from assembly 'RestTest, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
at (wrapper managed-to-native) System.Type:type_is_assignable_from (System.Type,System.Type)
at System.Type.IsAssignableFrom (System.Type c) [0x00000] in <filename unknown>:0
at System.Web.Mvc.AreaRegistration.IsAreaRegistrationType (System.Type type) [0x00000] in <filename unknown>:0
at System.Web.Mvc.TypeCacheUtil+<>c__DisplayClass1.<FilterTypesInAssemblies>b__0 (System.Type type) [0x00000] in <filename unknown>:0
at System.Linq.Enumerable+<CreateWhereIterator>c__Iterator35`1[System.Type].MoveNext() [0x00000] in <filename unknown>:0
at System.Collections.Generic.List`1[System.Type].AddEnumerable (IEnumerable`1 enumerable) [0x00000] in <filename unknown>:0
at System.Collections.Generic.List`1[System.Type]..ctor (IEnumerable`1 collection) [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.ToList[Type] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at System.Web.Mvc.TypeCacheUtil.GetFilteredTypesFromAssemblies (System.String cacheName, System.Predicate`1 predicate, IBuildManager buildManager) [0x00000] in <filename unknown>:0
at System.Web.Mvc.AreaRegistration.RegisterAllAreas (System.Web.Routing.RouteCollection routes, IBuildManager buildManager, System.Object state) [0x00000] in <filename unknown>:0
at System.Web.Mvc.AreaRegistration.RegisterAllAreas (System.Object state) [0x00000] in <filename unknown>:0
at System.Web.Mvc.AreaRegistration.RegisterAllAreas() [0x00000] in <filename unknown>:0
at RestTest.WebApiApplication.Application_Start() [0x00000] in <filename unknown>:0
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
実際の "ValuesController"クラスに問題はないとは思いません。基本的に空のクラスです。代わりにNuGetパッケージ "AspNetWebApi.Core.4.0.20126.16343"(System.Web.Http.dll)と共に配布される "ApiController"という基本クラスに問題があるようです。私は "MoMA"(Mono Migration Analyzer)ですべての新しいライブラリをチェックしています。その結果、かなりの方法がまだ実装されていないようです。
私の質問は次のとおりです。ASP.NET Web APIをMonoと一緒に使用できることを誰かが知っていますか?とにかく(MonoではなくMicrosoftのライブラリを使用して)実行する方法はありますか?
補遺:上記の設定でモノに定期的MVC4プロジェクトを実行しようとしたものに
クイックノート。 1つのメソッド、つまりAllowOnlyFipsAlgorithms()がまだ実装されていないため、私はわずかな問題に遭遇しました。これは、 "System.Web.Optimization"の "CreateHashAlgorithm"によって呼び出され、プロジェクトを実行するために、このライブラリへの参照をすべて削除する必要がありました。はい、あなたは、今のところ新しくてきれいなCSS/Javascriptのバンドル機能がなくてはいけませんが、少なくともサイトを稼働させる必要があります。
その間、私は最新の[Mono 2.11.0](http://www.go-mono.com/mono-downloads/download.html)を使用して試し、ソースから直接ランタイムとサーバーを構築しました。しかし、私は起動時にいくつかの例外が発生したため、Web APIに基づいたサービスだけでなく、Webサイトを実行することもできませんでした(2.10.8.1で作業)。 – UnclePaul