在同一项目中合并MVC + Blazor

时间:2019-02-11 12:33:49

标签: .net asp.net-core blazor

我们当前的应用程序现在正在ASP.NET Core(MVC)上运行,我想知道在同一项目中是否会有一种正式的方法来使用MVC和Blazor(客户端)?

之所以要这样做,是因为我们无法从MVC迁移到Blazor,因为应用程序太大了。 我正在考虑从MVC到Blazor的逐步过渡。只是不确定这是否可能?

2 个答案:

答案 0 :(得分:1)

根据ASP.NET Core 3.0 Preview 2 release notes

当前,您不能直接将Blazor与ASP.NET Core MVC一起使用,但可以与新引入的Razor Component一起使用。微软期望在即将发布的ASP.MET Core版本中将Blazor直接与ASP.NET Core MVC结合使用。

有关更多详细信息:ASP.NET Core updates in .NET Core 3.0 Preview 2

答案 1 :(得分:0)

对于服务器端Blazor,现在绝对可以实现此功能,在相同解决方案中,您拥有Blazor项目(或Blazor组件库项目)和MVC项目。我对问题的回答有完整的演练:Adding Server-Side Blazor to an existing MVC Core app

以前在同一项目中没有Blazor组件与MVC文件一样,因为它们和Razor Pages都使用相同的.cshtml扩展名,因此编译器可能会感到困惑。我猜现在Blazor页面使用.razor扩展名可能已经解决了,但是我还没有尝试过。我希望客户端Blazor也可以采用类似的方法,但是我也没有尝试过。

(我认为从您的问题出发,您可能将“项目”与“解决方案”互换使用,因此,即使在同一项目中使用Blazor组件存在问题,也不应为其添加另一个项目到解决方案中。”提出一个问题)