Вопрос

Итак, я установил SignalR через Nuget, и это зависит от Microsoft.Owin который он затем установил.Всякий раз, когда я запускаю свое приложение, оно выдает FileLoadException в Startup.cs есть app.MapSignalR(); линия.Там написано "Файл или сборка"Microsoft.Owin, версия = 2.0.1.0, Культура = нейтральная, PublicKeyToken=31bf3856ad364e35' или не удалось загрузить одну из его зависимостей.Определение манифеста найденной сборки не соответствует ссылке на сборку ".

Я уверен, что она включает в себя Microsoft.Owin.dll но когда я пытаюсь переустановить его через Nuget, он говорит, что не смог переустановить Microsoft.Owin.XML

Startup.cs

using Microsoft.Owin;
using Owin;

[assembly: OwinStartup(typeof(SignalRChat.Startup))]
namespace SignalRChat
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            // Any connection or hub wire up and configuration should go here
            app.MapSignalR();
        }
    }
}
Это было полезно?

Решение

Последняя версия Synolr полагается на Microsoft.owin 2.0.2.0, а не 2.0.1.0.См. Следующее учебное пособие - вы захотите добавить Microsoft.aspnet.signalr. Seffhost в менеджере пакетов, а не Microsoft.owin.

http://www.asp.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/tutorial-signalr-20-Sels-host

Другие советы

Иногда пакеты ссылаются на определенные версии других пакетов.Вы можете попробовать добавить обязательный редирект для Microsoft.Owin в вашем web.config файл (в <runtime> раздел):

<dependentAssembly>
  <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" />
  <bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.1.0.0" />
</dependentAssembly>

Это говорит обо всем, что ссылается на более старую версию, чем 2.1.0.0 для использования 2.1.0.0 вместо этого.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top