我正在尝试在mod_mono下运行最多4.0的ASP .NET 2.0应用程序。 2.0应用程序正在使用针对2.x平台构建的6.3.5版本的DLL,它工作正常。
以下是我到目前为止尝试过的连接器DLL的版本:
我正在添加mono / 4.0 / machine.config,如下所示:
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL"
type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
对于所有不同版本,PublicKeyToken似乎都是相同的。
当我运行应用程序时,我明白了:
Unhandled Exception: System.IO.FileLoadException: The assembly name is invalid.
at System.Reflection.AssemblyName..ctor (System.String assemblyName) [0x00045] in /root/mono-2.10.1/mcs/class/corlib/System.Reflection/AssemblyName.cs:93
at Mono.CSharp.ImportedAssemblyDefinition.ReadAttributes () [0x000c5] in /root/mono-2.10.1/mcs/mcs/import.cs:1522
at Mono.CSharp.MetadataImporter.GetAssemblyDefinition (System.Reflection.Assembly assembly) [0x00028] in /root/mono-2.10.1/mcs/mcs/import.cs:821
at Mono.CSharp.ReflectionImporter.ImportAssembly (System.Reflection.Assembly assembly, Mono.CSharp.RootNamespace targetNamespace) [0x00000] in /root/mono-2.10.1/mcs/mcs/reflection.cs:88
at Mono.CSharp.DynamicLoader.LoadReferences (Mono.CSharp.ModuleContainer module) [0x0003e] in /root/mono-2.10.1/mcs/mcs/reflection.cs:587
at Mono.CSharp.Driver.Compile () [0x00159] in /root/mono-2.10.1/mcs/mcs/driver.cs:1535
at Mono.CSharp.Driver.Main (System.String[] args) [0x0003d] in /root/mono-2.10.1/mcs/mcs/driver.cs:243
我已经阅读了一些帖子说这个版本有效或版本有效,我想知道是否有人确定无疑是因为我不会因为它下载一大堆dll并从一个跳到另一个而陷入困境不起作用。
答案 0 :(得分:0)
我没有想到这一点,但我确实看到另一篇文章表明他们已升级到Mono的更高版本并解决了这个问题。
我已升级到2.10.9
,问题似乎已修复,网站的MVC2版本似乎正在运行w / out问题。
我确实遇到单声道没有找到4.0连接器的v6.5.4的问题所以我已经恢复到6.3.5并且已经解决了这个问题。我正在运行SubSonic,因此可能是SubSonic与6.3.5
相关联,这就是为什么没有找到6.5.4。