当我想编辑c# Unity脚本时,它们会在Visual Studio中打开。它应该为所有与Unity相关的代码提供自动补全,但它不起作用。

在这里你可以看到缺失的功能:

可以看到,转换对象没有打开自动完成菜单。

Unity版本:5.5.2f1 Visual studio 2015 安装Visual Studio Tools for Unity


当前回答

我今天使用Visual Studio 2017 15.4.5和Unity 2017遇到了同样的问题。

我可以通过在Visual Studio中右键单击项目并将目标框架从3.5更改为4.5来解决这个问题。

希望这能帮助到其他有类似情况的人。

其他回答

下面的方法对我有用。

进入编辑->首选项->外部工具->外部脚本编辑器选择脚本编辑器

两个备选方案:

解决1

@singleton为我指明了这个方向。而不是在Visual Studio中更改目标,你应该在Unity中更改它,因为项目是自动生成的。

首先删除自动生成的Visual Studio文件: .csproj .user . sln

然后从Unity进入PlayerSettings,在“其他设置”下将“脚本运行时版本”从稳定3.5更改为实验性4.6。

然而,这并没有解决我的问题。

修复2

我注意到所有与Unity相关的代码都带有黄色警告。检查您的错误日志,看看情况是否如此。特别是查看是否得到以下错误:getreferenceNearestTargetframeworkTask

如果是,试试: 再次启动Visual Studio安装程序。

在Build Tools 2017中,单击“修改”,

确保勾选“Nuget目标和构建任务”。如果你点击通用Windows平台开发,这应该会被勾选。

尝试组合:Ctrl + Alt + Space

从Unity选择编辑选项,然后~>首选项…~>外部工具,然后打开内置包。我尝试了所有的解决方案,只有这一个帮助我,我打开它的机会!

嗯,也许你可以把我的指南看作是一种可选的方法。我在使用Unity 2020和Visual Studio Code 1.26时遇到了这个问题 为了解决这个问题,我采取了以下步骤:

在Visual Studio中的c#插件中 从https://www.monodevelop.com/download安装Mono 让我们看看Mono是安装在你的Mac的这个命令。例如,在我的Mac中,它是/Library/Frameworks/Mono.framework/Versions/Current 回到c#插件,打开它的设置,并在设置中更改下面的设置。插件的Json:

    "omnisharp.monoPath": "/Library/Frameworks/Mono.framework/Versions/Current",
    "omnisharp.useGlobalMono": "always"

开始....