Ted*_*ord 4 visual-studio-2017
在VS Enterprise 2017 15.8.2中完成了以下操作。我已经将.NET Framework项目(C#)转换为netstandard,然后由于生成问题不得不将其转换回。通过从git恢复先前的提交来完成转换。但是,现在VS无法将项目识别为有效项目。链接的单元测试项目将生成警告
找不到引用的组件“ <项目名称>”。
尝试查看项目属性会产生错误
尝试加载项目属性窗口时发生错误。关闭窗口,然后重试。找不到会员。(来自HRESULT的异常:0x80020003(DISP_E_MEMBERNOTFOUND))
构建选择选项从构建菜单中消失,而构建/调试选项从项目上下文菜单中消失。解决方案资源管理器的依赖项节点为空。我看到过其他帖子,其中有人描述了类似的情况,可以通过重新打开解决方案或将vs模式更改为其他开发类型或删除bin / obj来解决。这些都不起作用,也没有完全重新启动。考虑到该项目文件曾经是框架,我怀疑.gitignore覆盖了某个地方需要删除的某些内容。
@bbent 的低级替代品。结果相同的最终结果。
使用文本编辑器打开 sln 文件并为您的项目指定匹配的PROJECT-TYPE-GUID。格式是:
格式:
Project("<PROJECT-TYPE-GUID>") = "<proj name>", "<proj file path>", "<unique project guid>"
EndProject
Run Code Online (Sandbox Code Playgroud)
经典 C# 项目示例:
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibOne", "LibOne\LibOne.csproj", "{D5590E95-BFCC-4939-9D15-685D25B6BBE7}"
EndProject
Run Code Online (Sandbox Code Playgroud)
netcore 的示例,相应的 SDK 样式项目:
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LibTwo", "LibTwo\LibTwo.csproj", "{D5590E95-BFCC-4939-9D15-685D25B6BBE7}"
EndProject
Run Code Online (Sandbox Code Playgroud)
项目类型-guid 是一个 GUID(定义我的 MS),代表('c#'、'c++'、'xna'、'folder'、'web site' 等)。
摘抄:
C# {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
folder {2150E333-8FDC-42A3-9474-1A3956D46DE8}
core {9A19103F-16F7-4668-BE54-9A1E7A4F7556}
wpf {60DC8134-EBA5-43B8-BCC9-BB4BC16C2548}
Run Code Online (Sandbox Code Playgroud)
不过,微软没有任何官方消息!完整列表可能仅在 Visual Studio 源代码中。但是 ID 不会改变,至少在过去十年中不会。
| 归档时间: |
|
| 查看次数: |
702 次 |
| 最近记录: |