Unity 2018.1加载System.Data.dll失败求助:适配4.x运行时的版本选择
解决Unity 2018.1中导入System.Data.dll失败的问题
我帮你梳理几个关键步骤,应该能解决这个加载失败的问题:
第一步:选对正确的System.Data.dll版本
Unity 2018.1的.NET 4.x Equivalent运行时对应的是MonoBleedingEdge/lib/mono/4.5-api目录下的System.Data.dll——别选错成不带-api后缀的4.0或4.5文件夹,那些是标准Mono版本,和Unity的定制运行时不兼容。直接复制这个路径下的dll到你的Assets/Plugins文件夹里。第二步:配置dll的平台兼容性
选中Plugins里的System.Data.dll,在Inspector面板里做以下设置:- 取消勾选
Any Platform,手动勾选Editor和你需要的目标平台(比如Windows Standalone) - 根据你的编辑器/目标平台选择对应CPU架构:64位选
x86_64,32位选x86 - 勾选
Allow unsafe code(System.Data内部依赖不安全代码,Unity默认未开启)
- 取消勾选
第三步:匹配System.Data.SQLite的版本
你用的System.Data.SQLite.dll必须是支持.NET 4.x的版本,且和System.Data.dll的架构(32/64位)完全一致。建议下载对应.NET 4.5版本的SQLite包,把里面的System.Data.SQLite.dll和SQLite.Interop.dll一起放到Plugins里,同样配置好平台兼容性。第四步:清理缓存重新导入
有时候Unity的缓存会干扰资源加载,你可以:- 关闭Unity编辑器
- 删除项目根目录下的
Library文件夹 - 重新打开Unity,等待它重新导入所有资源
如果还是报错,点击Console里的报错信息展开详细内容,通常会明确提示是版本不兼容、架构不匹配还是缺少依赖文件,根据提示再调整即可。
内容的提问来源于stack exchange,提问作者user2088807




