Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 信号器2.0错误:无法加载文件或程序集Microsoft.Owin.Security_C#_Asp.net_.net_Signalr - Fatal编程技术网

C# 信号器2.0错误:无法加载文件或程序集Microsoft.Owin.Security

C# 信号器2.0错误:无法加载文件或程序集Microsoft.Owin.Security,c#,asp.net,.net,signalr,C#,Asp.net,.net,Signalr,我将一步一步地学习本教程 我在下面标记的行中得到了一个例外 string url = "http://localhost:8080"; using (WebApp.Start(url)) //<------ error on this line { Console.WriteLine("Server running on {0}", url); Console.ReadLine();

我将一步一步地学习本教程

我在下面标记的行中得到了一个例外

        string url = "http://localhost:8080";
        using (WebApp.Start(url)) //<------ error on this line
        {
            Console.WriteLine("Server running on {0}", url);
            Console.ReadLine();
        }
stringurl=”http://localhost:8080";

使用(WebApp.Start(url))/此程序集与请求的程序集不匹配,这就是您收到此错误的原因。检查GAC中的Microsoft.Owin.Security版本。另请参见

好的,我已经解决了

我必须使用此命令将我的Microsoft.Owin.Security包升级到2.1.0

Install-Package Microsoft.Owin.Security -Version 2.1.0
并像这样修改my App.config中的绑定

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

就我而言,我有两个项目:

  • MyProj.MvcWeb
    (一个引用了
    Microsoft.Owin.Security 3.0.0
    的MVC应用程序)
  • MyProj.Data.Entities
    (引用了
    Microsoft.Owin.Security 2.1.0的类库;不确定这是如何发生的)
MyProj.Data.Entities
项目中将
Microsoft.Owin.Security
2.1.0
升级到
3.0.0
,为我解决了这个问题。

简单, 转到web.config文件。将Microsoft.Owin、Microsoft.Owin.Security.OAuth、Microsoft.Owin.Security.Cookies、Microsoft.Owin.Security的“bindingRedirect”标记更改为如下所示:

<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.1.0" />


这可能有用。

我接受了你的想法,感谢你所做的研究,我是这样做的:

get-project PerfSurf | Update-Package Microsoft.Owin.Security
这要简单得多,而且这将更新清单本身


忽略这个(
get project PerfSurf
)部分,因为我使用它是因为我有多个测试项目,并且不想全部更新它们。在我的情况下,这是IIS express的问题。一旦我将调试更改为本地IIS,错误就消失了。

将app.config重命名为web.config对我来说很有用。或者只是复制app.config并将其命名为web.config。在我的例子中,我在“更新数据库”过程中首先在代码中出现了这个错误。我将“将启动设置为项目”放在带有迁移的项目中。它帮助我

我通过更改我的Web.config配置标记修复了它:

由此:

<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">

为此:

<configuration>


不知道为什么会这样。

我的GAC中没有Microsoft.Owin.Security。它只存在于packages文件夹中Microsoft.Owin.Security更新包的可能重复项工作得非常出色,谢谢!对于遇到这个问题的人,我这样做了,但仍然收到了错误。直到我从web服务器上删除所有文件并重新发布,错误才消失。只是重新发布而不先删除并不能解决问题。@Dave从bin目录中删除所有DLL并重新编译对我也很有效。
<configuration>