将html帮助器迁移到ASP.NET Core

问题描述 投票:4回答:2

我正在将项目转换为ASP.NET Core。我需要迁移大量可重用的html帮助程序,但Core中不存在html帮助程序。

有些很复杂,有些简单。这是一个非常简单的例子:

@helper EditIcon()
{
    <i class="glyphicon glyphicon-pencil"></i>
}

请注意,这只是一个例子。

Point正在编写一个标记助手,因为这是一种巨大的过度杀伤力。部分相同。视图组件也是如此。

我们谈论的是Razor的一小部分内容。什么是我最好的选择?

c# razor asp.net-core asp.net-core-mvc html-helper
2个回答
5
投票

所以,似乎只有三个选择:

所以没有简单的方法来迁移Razor片段,而不是跳过篮球。


编辑

所以looks like html帮手are available毕竟。他们只是没有被正确记录!


3
投票

@helper指令已删除,但如果您考虑使用Func<dynamic, IHtmlContent>,则表示您正在迁移旧代码。这是一个例子:

@{
    Func<dynamic, IHtmlContent> BrowserInfo(string btitle, string href, string imgfilename) =>
        @<div style="text-align: center">
            <a href="@href">
                <img src="~/content/images/browsers/@imgfilename" alt="@btitle"/>@btitle</a>
        </div>;
}

并像使用旧助手方法一样使用它:

@BrowserInfo("Google Chrome", "http://www.google.com/chrome/", "browser_chrome.gif")(null)
© www.soinside.com 2019 - 2024. All rights reserved.