【问题标题】:Embedding a Razor view inside another Razor view (same project)在另一个 Razor 视图中嵌入一个 Razor 视图(同一个项目)
【发布时间】:2019-09-10 00:10:06
【问题描述】:

在默认的 Asp.Net-Core 模板中,我创建了一个新视图 (MyView.cshtml)。它的代码如下所示:

@{
    ViewData["Title"] = "My View";
}
<h1>@ViewData["Title"]</h1>

<p>Stuff relating to My View goes here</p>

我想做的是将它直接嵌入到主页索引视图中。我知道我可以这样做:

@{await Html.RenderPartialAsync("MyView", Model);}

但是,我一直在看the Blazor story around this,它看起来更时尚。 Razor 中是否对这种语法有任何支持(如果有,我将如何实现它 - 我尝试了这个链接上的内容,但它看起来只是 Blazor)?

【问题讨论】:

    标签: c# razor asp.net-core-mvc


    【解决方案1】:

    你应该这样做的实际方式是:

    <partial name="MyView" />
    

    Model 是隐式传递的,所以你不需要显式地这样做。如果您有其他想要传递的东西,那么您可以这样做:

    <partial name="MyView" model="@Model.SomeSubModel" />
    

    在 Blazor 之外,没有什么比 Razor Components 更相似了。一切都在客户端上运行的事实使很多事情成为可能。但是,您可以使用view components

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多