如何将blazor零部件移动到其他部件

如何将blazor零部件移动到其他部件,blazor,blazor-server-side,Blazor,Blazor Server Side,我有一个blazor服务器项目,我想将一些共享组件移动到另一个程序集,看看它是否会在编译时间上产生差异(让我知道这是否可行的奖励…),但进展不太顺利 在VS2019中,组件的razor.cs部分与.razor部分处于同一级别(而不是像blazor项目中那样位于它们下面),其他组件找不到它们。奇怪的是,项目构建并运行,但组件只是绘制为空白。我已经清理、重建、删除了bin和obj文件夹,重新启动了VS等,没有任何更改 我已经更新了\u Imports.razor文件,所有内容都应该是它需要的,但这就

我有一个blazor服务器项目,我想将一些共享组件移动到另一个程序集,看看它是否会在编译时间上产生差异(让我知道这是否可行的奖励…),但进展不太顺利

在VS2019中,组件的
razor.cs
部分与
.razor
部分处于同一级别(而不是像blazor项目中那样位于它们下面),其他组件找不到它们。奇怪的是,项目构建并运行,但组件只是绘制为空白。我已经清理、重建、删除了bin和obj文件夹,重新启动了VS等,没有任何更改

我已经更新了
\u Imports.razor
文件,所有内容都应该是它需要的,但这就是不起作用

感谢您的帮助

编辑:这是“下”:

这就是它的显示方式:

如何将blazor零部件移动到其他部件

您可以使用
@namespace.Your.Name.Space

奇怪的是,项目构建并运行,但组件只是绘制为空白

只有.cs基本部分被链接进来,你的.razor代码被忽略。因此,所有组件都作为其基类呈现为空

要将.razor编译为中间C#,您需要构建时支持

您可以将页面移动到Razor类库,然后选择“支持页面和视图”框

但是这种项目类型更多的是针对独立的组件,提供它们自己的css文件等,这些文件可能适合您的需要,也可能不适合您的需要


一般来说,我不会期望在构建时间上有太大的差异,它们甚至可能会上升。因此,您可能需要重新考虑这一点。

您所说的“而不是像blazor项目中那样“在”它们下面”是什么意思?可以在csproj文件中修复文件嵌套。VS还有一个扩展名。问题是我的所有文件都不在.csproj文件中。这并不重要,只是奇怪的是,他们没有嵌套在另一个项目中。我仍然没有设法使它在一个解决方案中工作,但这确实推动了我前进。谢谢