在Razor组件中渲染Razor局部视图(Blazor) [英] Render Razor Partial View in Razor Component (Blazor)

查看:0
本文介绍了在Razor组件中渲染Razor局部视图(Blazor)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近发现了Blazor,并一直在尝试一些测试项目,以便更好地评估如何将其包含在未来的项目中。我来自MVC背景,我从一个MVC项目开始,并向其中添加了Razor组件,我将其嵌套在我的标准MVC Razor页面中。

是否有可能出现相反的情况?我是否可以在Razor(Blazor)组件中执行等同于@Html.RenderPartial()的操作?

例如

MVC View使用@(await Html.RenderComponentAsync<Test>(RenderMode.ServerPrerendered))呈现组件

该组件管理状态等,并使用@Html.RenderPartial("Someview.cshtml", someModel)的等价物来呈现具有模型绑定的标准razor视图。

mvc

您可以使用RenderFragment从静态文件、剃刀页或推荐答案视图中加载代码,方法是从其URL加载其内容。

样本

@page "/"
@page "/home"
@inject HttpClient _httpClient

<h1>Welcome</h1>
@_renderFragment

@code {
        protected override async Task OnInitializedAsync()
        {
            using var response = await _httpClient.GetAsync("http://localhost:4321/WelcomFragment").ConfigureAwait(false);
            var content = await response.Content.ReadAsStringAsync().ConfigureAwait(false);
            _renderFragment = builder =>
            {
                builder.OpenElement(1, "p");
                builder.AddContent(2, new MarkupString(content));
                builder.CloseElement();
            };
            base.OnInitialized();
        }
}

这篇关于在Razor组件中渲染Razor局部视图(Blazor)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆