在dotnet core / corefx中是否有与HtmlTextWriter等效的类?

时间:2015-12-09 17:53:04

标签: c# html .net .net-core

许多创建html的库都依赖于HtmlTextWriter。在新的corefx中是否有与此类相同的东西?

以下是一些依赖HtmlTextWriter的项目: https://github.com/darthfubumvc/htmltags https://fluenttags.codeplex.com/

另一个问题可能是:"使用dotnet core / corefx生成html的最佳方法是什么?"

3 个答案:

答案 0 :(得分:1)

.NET Core 2.0 does not support HtmlTextWriter上课。

您可以通过将使用HtmlTextWriter的逻辑移动到类库.NET Standard 2.0来解决此问题。然后,您将能够从 - .NET Core.NET Framework项目中引用此类库。

答案 1 :(得分:1)

我已经在 .NET core 3.1 和 .NET 5 上测试了一个超级简单的修复程序。只需在您的 .NET core 项目中安装 NuGet 包 HtmlTextWriter,就是这样。

答案 2 :(得分:0)

如果您不关心格式,缩进或制表符,则可以将常规TextWriter与扩展方法一起使用。

使用扩展方法回加WriteBeginTag和其他方法将为您提供源代码级的兼容性,但是由于您仍在使用TextWriter而没有其他状态,因此您将无法正确实现除非您将缩进状态存储在一个单独的对象中,然后将其与TextWriter一起携带,否则缩进(我确实考虑过使用线程本地存储将其隐式化,但是由于ASP.NET Core使用async很多我认为为此目的使用线程本地存储是不明智的。