许多创建html的库都依赖于HtmlTextWriter。在新的corefx中是否有与此类相同的东西?
以下是一些依赖HtmlTextWriter的项目: https://github.com/darthfubumvc/htmltags https://fluenttags.codeplex.com/
另一个问题可能是:"使用dotnet core / corefx生成html的最佳方法是什么?"
答案 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
很多我认为为此目的使用线程本地存储是不明智的。