我的英语不好,但是我正在尽力描述我的问题。我已经从
复制了I18N.dll,I18N.CJK.dll,I18N.West.dll和System.Data.dll D:\Program Files\Unity\Editor\Data\Mono\lib\mono\2.0
,
但很快出现如下错误:
错误CS1703:已导入具有相同标识的多个程序集: 'D:\ GSS Project \ Assets \ Plugins \ System.Data.dll'和'D:\ Program Files \ Unity \ Editor \ Data \ MonoBleedingEdge \ lib \ mono \ 4.7.1-api \ System.Data.dll'。删除重复的引用之一。
此外,另一个目录中发生了相同的异常:
D:\Program Files\Unity\Editor\Data\NetStandard\compat\2.0.0\shims\netfx\
当时,为了解决该问题,我在两个目录中都删除了System.Data.dll,然后可以在Visual Studio 2017中使用名称空间System.Data。但是当我使用{{1} },还有另一个错误:
Assets \ Scripts \ DBConnection.cs(39,35):错误CS0433:类型'ConnectionState'同时存在于'System.Data,版本= 2.0.0.0,区域性=中性,PublicKeyToken = b77a5c561934e089'和'netstandard,版本= 2.0.0.0,文化=中性,PublicKeyToken = cc7b13ffcd2ddd51'
尝试了许多方法之后,我发现是否输入了
System.Data.ConnectionState
并将.Net Standard 2.0更改为.Net 4.x,可以避免该错误。
但是这种方法对吗?完成此操作后,我仍然无法访问数据库,因为发生了许多异常(它们大多数与Edit --> Project Settings --> Player --> Other Settings --> Configuration --> Api Compatibility Level
有关)。
我的方法可能有很多问题,但是谁能告诉我什么是正确的方法?
非常感谢。
答案 0 :(得分:0)
正如评论中的用户所述,与dll的直接连接不再安全,使用php互连更安全更好。
(特别是,如果您正在考虑在WEBGL平台上发布,则在构建游戏后将很难使sql连接正常工作,这就是我目前所处的位置)
话虽如此,
由于
“系统..”
(存在两次),您的资产中不需要system.Data.dll。
擦除 System.Data.dll ,您只需要已有的I18N文件和
MYSQL.data.dll,GoogleProtofub和bouncyCasteCrypto。
还将NET版本更改回4X.V2。
最后,您可以从MYSQL官方站点找到mysql连接器/.NET文件。
我希望这会有所帮助。让我知道其他错误。