Visual Studio 无法识别 NuGet/BaGet 上托管的库中的新 属性,显示错误的 Intellisense 错误
Visual Studio doesn't recognize new property in library hosted on NuGet/BaGet showing false Intellisense errors
我开发了一个库,它在 BaGet 上发布并在我的一个项目中使用。在库中扩展模型时,我将其发布到 BaGet,然后使用 VS NuGet 包管理器更新引用项目中的包。有时,VS 无法识别 Intellisense 中的这些更改。
示例:我在库项目中添加了一个模型字段AuthorUserName
并发布:
public class VBLightForumThread {
// Other fields
public string AuthorUserName { get; set; }
}
在我的项目中更新新库后,使用 AuthorUserName
属性:
时智能提示显示错误
但是应用了更新。在 Razor 视图的情况下,我仍然可以开始调试,并且作者姓名显示在呈现的 HTML 中。这甚至可以在控制器中得到证明:VS 向我显示错误,这通常会导致编译错误。但无论如何我都可以编译和调试。在调试期间,它向我显示了属性值,尽管 VS 仍然还显示 AuthorUserName
不存在的错误:
因为在 VS 错误控制台中有很多这样的假错误很烦人:我该如何解决这个问题,以便 VS 在智能感知中向我显示这些新属性而不是抛出错误?
我已经尝试过但没有成功:
- 清洁解决方案
- 重新构建解决方案
- 重启Visual Studio
我安装的版本是Visual Studio2019 Community 16.5.4。唯一帮助临时的是更新 VS。在上述假错误的情况下,我注意到 VS 更新。更新后,错误消失了。但是现在我扩展了一个库的模型,错误依旧。所以它没有被更新修复,但似乎 VS 有某种被更新清除的 Intellisense 缓存。
作为解决方法,它有助于关闭 VS,然后删除 <ProjectName>/.vs/<ProjectName>
中的 DesignTimeBuild
文件夹并再次重新打开 VS。花了一些时间,错误消失了。
虽然这可行,但我更喜欢一些在更新 NuGet 包后自动刷新缓存的长期解决方案。我假设 VS 自己执行此操作,否则在这些更新后不会显示任何修改。因此,如果有人对此问题有完整的解决方案,请仍然post。
我开发了一个库,它在 BaGet 上发布并在我的一个项目中使用。在库中扩展模型时,我将其发布到 BaGet,然后使用 VS NuGet 包管理器更新引用项目中的包。有时,VS 无法识别 Intellisense 中的这些更改。
示例:我在库项目中添加了一个模型字段AuthorUserName
并发布:
public class VBLightForumThread {
// Other fields
public string AuthorUserName { get; set; }
}
在我的项目中更新新库后,使用 AuthorUserName
属性:
但是应用了更新。在 Razor 视图的情况下,我仍然可以开始调试,并且作者姓名显示在呈现的 HTML 中。这甚至可以在控制器中得到证明:VS 向我显示错误,这通常会导致编译错误。但无论如何我都可以编译和调试。在调试期间,它向我显示了属性值,尽管 VS 仍然还显示 AuthorUserName
不存在的错误:
因为在 VS 错误控制台中有很多这样的假错误很烦人:我该如何解决这个问题,以便 VS 在智能感知中向我显示这些新属性而不是抛出错误?
我已经尝试过但没有成功:
- 清洁解决方案
- 重新构建解决方案
- 重启Visual Studio
我安装的版本是Visual Studio2019 Community 16.5.4。唯一帮助临时的是更新 VS。在上述假错误的情况下,我注意到 VS 更新。更新后,错误消失了。但是现在我扩展了一个库的模型,错误依旧。所以它没有被更新修复,但似乎 VS 有某种被更新清除的 Intellisense 缓存。
作为解决方法,它有助于关闭 VS,然后删除 <ProjectName>/.vs/<ProjectName>
中的 DesignTimeBuild
文件夹并再次重新打开 VS。花了一些时间,错误消失了。
虽然这可行,但我更喜欢一些在更新 NuGet 包后自动刷新缓存的长期解决方案。我假设 VS 自己执行此操作,否则在这些更新后不会显示任何修改。因此,如果有人对此问题有完整的解决方案,请仍然post。