Nustache View Engine ArrayTypeMismatchException - PullRequest
5 голосов
/ 30 января 2012

Пытаюсь использовать Nustache для обмена шаблонами усов клиента и сервера, но Nustache просто не очень хорошо играет с моим приложением. Я использовал код прямо из их примера приложения MVC в исходном коде, но получаю сообщение об ошибке каждый раз, когда пытаюсь установить или добавить механизм представления. Вот фрагмент кода (из метода действия я также попытался глобально добавить механизм представления в global.asax, и у меня была та же ошибка):

ViewResult viewResult = View(new { test = "Jawesome" });

viewResult.ViewEngineCollection = new ViewEngineCollection
                                  {
                                      new NustacheViewEngine()
                                  };

А вот и ошибка:

[ArrayTypeMismatchException: Attempted to access an element as a type incompatible with the array.]
   System.Collections.Generic.List`1.Insert(Int32 index, T item) +62
   MyController.Index() in C:\src\projects\myproject\myproject.Web\Controllers\MyController.cs:83
   lambda_method(Closure , ControllerBase , Object[] ) +79
   System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +264
   ...

1 Ответ

1 голос
/ 04 марта 2013

Я использую MVC4 с Nustache и у меня точно такая же проблема.Мне потребовалось некоторое время, чтобы выяснить проблему, и я не смог найти какие-либо решения в Интернете, поэтому я решил опубликовать свое решение в надежде помочь кому-то еще.

Проблема заключалась в проекте Nustache.Mvc3.ссылался на System.Web и System.Web.Mvc из MVC3, поэтому мне пришлось обновить их, чтобы использовать MVC4.Для этого: 1. В Visual Studio щелкните правой кнопкой мыши проект Nustache.Mvc3 и выберите «Свойства». 2. На вкладке «Применение» измените Target Framework на .Net Framework 4.5 3. Вернитесь в обозреватель решений, удалите System.Web и System.Web.Mvc в разделе «Ссылки» в Nustache.Mv3 4. Щелкните правой кнопкой мыши «Ссылки» и добавьте версию 4.0 для файлов System.Web и System.Web.Mvc

.
...