我记得曾经看过一个项目,一个人用某种语言编写了类似这样的东西,其中包含类似 json 的字符串,它创建了非常好的 html。有没有类似的东西可以用于 C# 或 .NET
radio-box{ AName, [First|Second|Value:9|ItsLikeAnEnum]}, TextBox[user, password],
Checkbox[RememberMe:true, blah]} //blah is default which is false
我记得曾经看过一个项目,一个人用某种语言编写了类似这样的东西,其中包含类似 json 的字符串,它创建了非常好的 html。有没有类似的东西可以用于 C# 或 .NET
radio-box{ AName, [First|Second|Value:9|ItsLikeAnEnum]}, TextBox[user, password],
Checkbox[RememberMe:true, blah]} //blah is default which is false
如果您使用的是 ASP.NET,则有HTML Agility pack。
它有很多助手来处理 HTML。它不会与您描述的格式完全相同,但仍然比处理原始 HTML 更容易。
从网站:
This is an agile HTML parser that builds a read/write DOM and supports plain XPATH or XSLT (you actually don't HAVE to understand XPATH nor XSLT to use it, don't worry...). It is a .NET code library that allows you to parse "out of the web" HTML files. The parser is very tolerant with "real world" malformed HTML. The object model is very similar to what proposes System.Xml, but for HTML documents (or streams).
虽然它与您问题中的代码示例不匹配,但也许您正在寻找像NHaml这样的模板语言?这是一个简短的 NHaml 示例:
%h1 List of products
%ul
- foreach (var product in products)
%li= product.Name
相当于:
<h1>List of products</h1>
<ul>
<% foreach (var product in products) %>
<li>
<%= product.Name %>
</li>
<% } %>
</ul>
如果你看一下 ASP.NET MVC,那里有很多内置的 html 帮助方法,你的意思是那种东西吗?
不完全是答案,但Asp.Net MVC 中有 TagBuilder。