无法加载文件或程序集"DotNetOpenAuth.AspNet"或其依赖项之一

Tro*_*i94 7 .net vb.net asp.net reference

我有一个Asp.net项目,在我所说的web.config项目中

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">      
      <dependentAssembly>
          <assemblyIdentity name="DotNetOpenAuth.AspNet" publicKeyToken="2780ccd10d57b246" culture="neutral" />
          <bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" />
      </dependentAssembly>
      <dependentAssembly>
          <assemblyIdentity name="DotNetOpenAuth.Core" publicKeyToken="2780ccd10d57b246" culture="neutral" />
          <bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
Run Code Online (Sandbox Code Playgroud)

(已经跟随了另一个帖子的应该修复)
但是在运行时我得到了

Could not load file or assembly 'DotNetOpenAuth.AspNet' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

当我打开我的项目的属性,并转到参考时,我可以看到有一个 DotNetOpenAuth.Core条目,一个DotNetOpenAuth.AspNet条目,一个DotNetOpenAuth.OAuth条目,一个DotNetOpenAuth.OAuth.Consumer条目,一个DotNetOpenAuth.OpenId条目和一个DotNetOpenAuth.OpenId.RelyingParty条目,它们都被设置为Copy Local = true.什么可能出错?

编辑:
继承完整的错误日志,看起来它仍然试图加载4.3.0.0给我


    Assembly Load Trace: The following information can be helpful to determine why the assembly 'DotNetOpenAuth.AspNet' could not be loaded.


    === Pre-bind state information ===
    LOG: User = MegaBadTouch\James
    LOG: DisplayName = DotNetOpenAuth.AspNet
     (Partial)
    WRN: Partial binding information was supplied for an assembly:
    WRN: Assembly Name: DotNetOpenAuth.AspNet | Domain ID: 2
    WRN: A partial bind occurs when only part of the assembly display name is provided.
    WRN: This might result in the binder loading an incorrect assembly.
    WRN: It is recommended to provide a fully specified textual identity for the assembly,
    WRN: that consists of the simple name, version, culture, and public key token.
    WRN: See whitepaper http://go.microsoft.com/fwlink/?LinkId=109270 for more information and common solutions to this issue.
    LOG: Appbase = file:///C:/Users/James/Documents/Visual Studio 2012/Projects/Archive/Archive/
    LOG: Initial PrivatePath = C:\Users\James\Documents\Visual Studio 2012\Projects\Archive\Archive\bin
    Calling assembly : (Unknown).
    ===
    LOG: This bind starts in default load context.
    LOG: Using application configuration file: C:\Users\James\Documents\Visual Studio 2012\Projects\Archive\Archive\web.config
    LOG: Using host configuration file: C:\Users\James\Documents\IISExpress\config\aspnet.config
    LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
    LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
    LOG: Attempting download of new URL file:///C:/Users/James/AppData/Local/Temp/Temporary ASP.NET Files/root/47d58003/7c1d4013/DotNetOpenAuth.AspNet.DLL.
    LOG: Attempting download of new URL file:///C:/Users/James/AppData/Local/Temp/Temporary ASP.NET Files/root/47d58003/7c1d4013/DotNetOpenAuth.AspNet/DotNetOpenAuth.AspNet.DLL.
    LOG: Attempting download of new URL file:///C:/Users/James/Documents/Visual Studio 2012/Projects/Archive/Archive/bin/DotNetOpenAuth.AspNet.DLL.
    LOG: Using application configuration file: C:\Users\James\Documents\Visual Studio 2012\Projects\Archive\Archive\web.config
    LOG: Using host configuration file: C:\Users\James\Documents\IISExpress\config\aspnet.config
    LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
    LOG: Redirect found in application configuration file: 4.0.0.0 redirected to 4.1.0.0.
    LOG: Post-policy reference: DotNetOpenAuth.AspNet, Version=4.1.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246
    LOG: Attempting download of new URL file:///C:/Users/James/AppData/Local/Temp/Temporary ASP.NET Files/root/47d58003/7c1d4013/DotNetOpenAuth.AspNet.DLL.
    LOG: Attempting download of new URL file:///C:/Users/James/AppData/Local/Temp/Temporary ASP.NET Files/root/47d58003/7c1d4013/DotNetOpenAuth.AspNet/DotNetOpenAuth.AspNet.DLL.
    LOG: Attempting download of new URL file:///C:/Users/James/Documents/Visual Studio 2012/Projects/Archive/Archive/bin/DotNetOpenAuth.AspNet.DLL.
    WRN: Comparing the assembly name resulted in the mismatch: Minor Version
    ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.

    Stack Trace: 


    [FileLoadException: Could not load file or assembly 'DotNetOpenAuth.AspNet' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]

    [FileLoadException: Could not load file or assembly 'DotNetOpenAuth.AspNet, Version=4.1.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
       System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0
       System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +34
       System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +152
       System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection) +77
       System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +16
       System.Reflection.Assembly.Load(String assemblyString) +28
       System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +38

    [ConfigurationErrorsException: Could not load file or assembly 'DotNetOpenAuth.AspNet, Version=4.1.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
       System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +752
       System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +218
       System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +130
       System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +170
       System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +91
       System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath) +258
       System.Web.Compilation.BuildManager.ExecutePreAppStart() +135
       System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +516

    [HttpException (0x80004005): Could not load file or assembly 'DotNetOpenAuth.AspNet, Version=4.1.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
       System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9874840
       System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
       System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

Jit*_*dra 3

我遇到了同样的错误,那就是您添加的参考文献之一可能已丢失。您所需要做的就是删除引用并手动将它们添加回来。或者将您的代码复制到新的解决方案中,它会起作用。我将代码复制到“新的空项目”中并运行它。那时没有任何问题。

使用新类和 aspx 打开一个新的空项目,然后将您的代码复制到其中,它应该可以工作。