EF6 и Breeze 1.4.6 (устаревшие) не работают для проекта hottowel

Я создал Asp.Net MVC с помощью VS2013 и использовал nuget для добавления HotTowel (версия 2.0.1 от 11 сентября 2013 г.). Я создал пару ViewModel, Models. Однако я получил следующую ошибку.

Похоже, есть проблема с «Breeze Server (устаревший)» и EF6. Однако при попытке установить неустаревший Breeze для EF6 это не удалось.

Установите версию ошибки бриза EF6.

Installing 'Breeze.WebApi2.EF6 1.4.6'.
Successfully installed 'Breeze.WebApi2.EF6 1.4.6'.
Install failed. Rolling back...
Updating 'Microsoft.AspNet.WebApi.OData 4.0.30506' to 'Microsoft.AspNet.WebApi.OData 5.0.0' failed. Unable to find a version of 'Breeze.Server.WebApi.Core' that is compatible with 'Microsoft.AspNet.WebApi.OData 5.0.0'.
readonly EFContextProvider<ApplicationDbContext> _contextProvider = new EFContextProvider<ApplicationDbContext>();

[HttpGet]
public string Metadata()
{
    return _contextProvider.Metadata(); // Error occurred here.
}
System.MissingMethodException was unhandled by user code
  HResult=-2146233069
  Message=Method not found: 'System.Data.Objects.ObjectContext System.Data.Entity.Infrastructure.IObjectContextAdapter.get_ObjectContext()'.
  Source=Breeze.WebApi.EF
  StackTrace:
       at Breeze.WebApi.EF.EFContextProvider`1.GetMetadataFromDbContext(Object context)
       at Breeze.WebApi.EF.EFContextProvider`1.GetMetadataFromContext(Object context)
       at Breeze.WebApi.EF.EFContextProvider`1.BuildJsonMetadata()
       at Breeze.WebApi.ContextProvider.Metadata()
       at ST13a.Controllers.BreezeController.Metadata() in c:\Users\nick\Documents\Visual Studio 2013\Projects\ST13a\ST13a\Controllers\BreezeController.cs:line 25
       at lambda_method(Closure , Object , Object[] )
       at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.c__DisplayClass10.b__9(Object instance, Object[] methodParameters)
       at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.Execute(Object instance, Object[] arguments)
       at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)
  InnerException: 

person ca9163d9    schedule 29.11.2013    source источник


Ответы (1)


Вы используете Durandal HotTowel? Если да, то мы (Джон и я) не обновили его, чтобы справиться с изменениями, которые произошли каскадом в ноябрьском выпуске VS 2013. Мы позади. Пока нет обходного пути. Следите за обновлениями.

person Ward    schedule 01.12.2013
comment
Да, я использую Durandal HotTowel. Не знаете, когда выйдет новая версия? Или мне следует переключиться на HotTowel.Angular? Хорошо ли HotTowel.Angular поддерживает выпуск VS 2013? Есть ли пример кода вроде CCJS-Scratch для HotTowl durandal? - person ca9163d9; 01.12.2013
comment
Мне нравится Durandal, и я надеюсь, что скоро верну его в VS2013... до конца года. Существуют пакеты HotTowel.Angular NuGet для VS2013. Лучший способ узнать об этом — пройти курс Pluralsight Джона Папы Создание приложений с помощью Angular. и Бриз. - person Ward; 02.12.2013