-
我've tried placing the basic dll'进入Unity的资产文件夹 - 结果:"blah blah will cause Unity to Crash Error."
-
我尝试过手动添加引用 - 结果:Unity会在编辑器刷新时刷新其引用,因此毫无 Value .
-
我无法找到've tried Installing using NuGet - Result: Closest to success as it handles all the dependencies and whatnot but I get: Assets/Scripts/Developing/TalkToDB.cs(3,7): error CS0246: The type or namespace name `MySql' . 你错过了装配参考吗?
它是某种“使用NuGet然后将dll复制到资产中”的组合吗?还是像那样多余的东西?因为这是我得到的最好的猜测 .
此外,我尝试了几个旧版本的NuGet包无济于事 . 同样,MySql.Data列在"Assembly-CSharp"的参考文献下,而我的Unity设置为4.X框架使用Unity 's latest 2018.2.5f1 (64bit) (I really hope that I don' t必须使用4.x才能使用...我将错过初始化属性的值.. )
1 回答
幸运的是我遇到了这个:
How to get MySql Connector/Net Working with Unity 2017
关于安全问题 . 我的关键是我的会话永远都不应该来自.NET - 将有用于更改数据的高级PHP脚本以及有关提升权限的任何内容 .
参考:Why you shouldn’t connect your mobile application to a database
超出此,
这正是我将要做的事情,使用MySql Connector与MySql驱动程序交谈(我现在太累了recall the name of(也许它是's based on ODBC? I can' t记住 . 因此谷歌 . 哈哈))
总而言之,使用顶部提供的链接,Unity 2018可以与最新版本(截至本文)MySql Connector(s)兼容 .
任何Assets文件夹必须包含:System.Data.dll和MySql.Data.dll(就是这样)
不需要NuGet .
但是错误消息:“加载脚本程序集'Assets / Plugins / MySql / System.Data.dll'失败!”到目前为止,它显然无法从app.config引用connectionString,就像Unity之外的普通C#一样 . 话虽如此,我正在努力寻找Unity的app.config实现,或者等效的替代方案 .
更新:
除了Unity中的一些令人讨厌的dll加载错误之外,还有一些错误 . 一切正常,我记得我不关心将我的应用程序直接连接到我的数据库的原因是因为用户将拥有的唯一权限是执行权限,因此所有程序将存储在服务器上(通过存储过程),从而保护数据库反对任何潜在的攻击即使咳嗽咳嗽咳嗽,用户决定"de-compile"(甚至一句话......?嘿)我的应用程序 .
最终更新:
正如我发布here;