Integrate nhibernate with Unity3D
本文关键字:Unity3D with nhibernate Integrate | 更新日期: 2023-09-27 18:03:56
我正在尝试实现Nhibernate到我的Unity3D项目。
我的主要项目是编译成Unity 3.5 net完整的基类库我的第二个项目(一个与Nhibernate参考)被编译为。net Framework 3.5 (.dll文件部署到asets/Plugins文件夹)我正在使用Nhibernate 3.4.0.4000
Unity3D给出错误:
"[…]无法加载文件或程序集'NHibernate, Version=3.4.0.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4'或其依赖项之一。"
所以我复制了NHibernate.dll和Iesi.Collections.dll到Assets/Plugins文件夹。
但是会产生另一个错误:
"
未处理异常:System.Reflection.ReflectionTypeLoadException:模块中的类不能被加载。
at (wrapper managed-to-native) System.Reflection。组装:GetTypes (bool)
at System.Reflection.Assembly.GetTypes () [0x00000] in:0
at monoc . csharp . rootnamspace . computenamespaces (System.Reflection.)装配,装配,系统。Type extensionType) [0x00000] in:0
at monoc . csharp . rootnamspace . computenamespace编译上下文ctx,系统。Type extensionType) [0x00000] in:0
at one . csharp . globalrootnamspace . computenamespaces (CompilerContext ctx) [0x00000] in:0
at one . csharp . driver . loadreferences () [0x00000] in:0
at one . csharp . driver . compile () [0x00000] in:0
at one . csharp . driver . main (System.)字符串[]args) [0x00000] in:0
类System. configuration . iconconfigurationsectionhandler无法加载,在System中使用,Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089类System. codedom . compiler . compilerparameters无法加载,在System中使用,Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
"
什么取决于iconfigationsectionhandler,我在哪里可以找到它?
谢谢,
将编译好的dll文件放在Assets
文件夹下,而不是Assets/Plugins
文件夹下。如果你使用的是3.4.0版本,在编译之前,打开Logging.cs
你需要和更改baseDir字符串从string baseDir = AppDomain.CurrentDomain.BaseDirectory;
到string baseDir = System.Environment.CurrentDirectory;
在第86行。这对这个人有效。
还要确保在Assets
文件夹中有. net数据库连接器DLL(MySQL.Data.dll
)。
编辑:
还必须从更改Api兼容性级别。Net 2.0子集到。Net 2.0 OP.