Unity 2017搭配VS2017时添加引用选项缺失,需导入Npgsql.dll
解决Unity 2017 + VS2017无法添加引用的问题
我之前也碰到过Unity 2017搭配VS2017时这个头疼的状况——右键References完全找不到"Add Reference"选项,要加Npgsql.dll确实急人,给你几个亲测有效的解决办法:
方法1:利用Unity的Plugins自动导入机制(最推荐)
Unity会自动识别Assets/Plugins文件夹里的DLL,并自动添加到VS项目的引用中,步骤很简单:
- 先关闭VS和Unity
- 在你的Unity项目根目录下,找到
Assets文件夹,在里面新建一个Plugins文件夹(如果已经有就跳过) - 把你下载的
npgsql.dll以及它依赖的相关DLL(比如Npgsql.EntityFrameworkCore.PostgreSQL.dll这类,根据你的需求来)复制到这个Plugins文件夹里 - 重新打开Unity,等它完成资源导入,再打开VS,这时候你去看References,应该已经自动出现Npgsql的引用了
方法2:手动编辑VS项目文件
Unity生成的VS项目有时候会被锁定,导致右键菜单异常,这时候可以直接编辑.csproj文件来添加引用:
- 关闭VS
- 在Unity项目的根目录(和
Assets同级的位置)找到你的VS项目文件,比如YourProjectName.csproj,用记事本或者VS的文本编辑器打开它 - 找到文件里的
<ItemGroup>标签(专门放引用的部分),添加以下代码(注意替换成你实际的DLL路径):<Reference Include="Npgsql"> <HintPath>Assets/Plugins/Npgsql.dll</HintPath> </Reference> - 保存文件后重新打开VS,引用就会被正确添加
方法3:重置Unity的VS项目生成配置
有时候是Unity的项目生成设置出了问题,导致VS的菜单异常:
- 打开Unity,点击顶部菜单栏的
Edit > Preferences > External Tools - 确认
External Script Editor选择的是Visual Studio 2017 - 点击
Regenerate Project Files按钮,等Unity重新生成VS项目文件后,再打开VS看看右键References里的"Add Reference"选项是否恢复
额外注意点
- 要下载和Unity2017兼容的Npgsql版本,Unity2017默认使用的是.NET Framework 4.x,所以别下载.NET Core版本的DLL,一定要选对应.NET Framework的版本,不然会报错
内容的提问来源于stack exchange,提问作者JamesHoux




