如何正确更改Blazor组件的名称剃刀文件

问题描述

我有一个问题令我有些恼火: 假设我有一个Blazor组件MyCustomComponent.razor,它位于ProjectName.Client.Shared。 现在,我可以在代码中使用它了,

<MyCustomComponent></MyCustomComponent>

但是,当我通过右键单击MyCustomComponent.razor重命名该组件到例如MyFirstCustomComponent.razor时,仍然只有旧的组件名称出现在IntelliSense中,而新的组件则无法识别。出现此错误消息:

找到了带有意外名称'MyFirstCustomComponent.razor'的标记元素。如果要用作组件,请为其名称空间添加@using指令。

即使我进行了完全重建,也没有任何反应。

我当前的解决方案是删除旧组件,并使用新名称创建一个新组件,但是我认为这并不是一个方法

在其他文件中,我是否还必须将旧名称更改为新名称重命名后,我在代码中找不到旧组件名称的任何外观,但是仍然可以从IntelliSense中进行选择...

解决方法

听起来像Intellisense数据库已损坏。最简单的方法是重建它。

这就是我要做的:

  1. 关闭解决方案并退出Visual Studio
  2. 删除.vs文件夹中的* .suo文件
  3. 重新启动Visual Studio并重新打开解决方案

将重建Intellisense数据库。

,

我的Visual Studio也可以这样做,但是通常在关闭编辑窗口中所有受影响的文件后,Intellisense就会赶上来。有时需要几分钟,我会继续工作直到清除。也许尝试重建高速缓存,这将使它在未来继续“正常”运行?