Unity2017支持了.net 4.6(c# 6.0),但是在Unity2017和VS中都需要一些设置才能正常工作。
1. Unity设置使用.net 4.6
c# 6.0是.net 4.6的一部分,unity默认使用的是.net 3.5,可以在Edit – Project Settings – Player 中,将Scripting Runtime Version修改为Experimental (.Net 4.6 Equivalent),然后重启即可。
2. 设置VS为使用C# 6.0环境
修改了Unity后,已经可以使用C# 6.0的特性了,但是有一个小问题。在Unity中可以正常运行带C# 6.0特性的脚本,但是在VS中却显示报错,比如使用插补字符串的特性就提示
错误 CS8025 功能“插补的字符串”在 C# 4 中不可用。请使用语言版本 6 或更高版本。
这是因为我们还没有修改VS的语言环境。
一般来说修改VS的环境是右键项目属性然后修改,但是默认右键属性会发现并打不开,只有一道白光闪过。这是因为vs的unity插件禁止修改项目属性,为了防止因为某些原因胡乱修改配置导致出现问题。但对于我们现在确实需要修改来改变项目环境。
打开Tool – Options,找到适用于Unity的工具(Tools for Unity),修改杂项(Miscellaneous)里面的访问项目属性(Access to project properties)为True,之后重启Unity,就会发现项目的属性可以打开了。
然后修改属性里面的应用程序(Application)标签下的目标框架(Target framework)为.Net Framework 4.6,接着点击生成(Build)标签,最下面有一个高级(Advanced)按钮,点开后出现一个高级生成设置的面板,修改语言版本(Language Version)为C# 6.0。
下来重启VS,大功告成!
不过有一个要注意的地方是,之后不能再用Unity的Assets菜单下的Open C# Project来开VS项目了,否则会覆盖项目设置。
用了上述方法之后,VS没事了
的但是unity还是报错
希望给解答一下
谢谢
直接换VS2019吧。。。