Работает ли веб-API ASP.NET (бета) с последней версией Mono (стабильной)?

Я пытаюсь запустить новую бета-версию веб-API ASP.NET (проект веб-API по умолчанию VS 2010), работающую в Ubuntu 10.04 с Mono 2.10.8.1. К сожалению, все мои попытки потерпели неудачу, поэтому далеко. Самое "значимое" исключение, которое я получил, это следующее:

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". Это в основном пустой класс. Вместо этого, кажется, проблема с базой класс под названием «ApiController», который распространяется с пакетом NuGet «AspNetWebApi.Core.4.0.20126.16343» (System.Web.Http.dll). Я проверяю все новые библиотеки с помощью «MoMA» (анализатор миграции моно), и результаты что довольно много методов, похоже, еще не реализованы.

Итак, мои вопросы: кто-нибудь знает, когда веб-API ASP.NET можно использовать вместе с Mono?Есть ли какой-либо способ заставить его работать в любом случае (возможно, с помощью библиотеки Microsoft вместо Mono)?

Приложение:

Краткое примечание для тех, кто пытается запустить обычный проект MVC4 на моно с помощью abo ве конфигурация. Я столкнулся с небольшими проблемами, потому что один метод, а именно AllowOnlyFipsAlgorithms(), еще не реализован. Он вызывается где-то в «System.Web.Optimization» с помощью «CreateHashAlgorithm», и для запуска моего проекта мне пришлось удалить все ссылки на эту библиотеку.Да, на данный момент вам придется обойтись без всех новых и изящных возможностей объединения CSS/Javascript, но, по крайней мере, вы загрузите свой сайт.

6
задан j0k 5 April 2013 в 11:23
поделиться