1

我很好奇是否有可能拥有一个提供完整的 HTML 抽象(也许还有 CSS 样式)的 .NET 类库。

每种 HTML 元素都会有一个 .NET 类,甚至是抽象类(例如,抽象基类 'List',它扩展了 'OrderedList' 和 'UnorderedList')。

然后可以通过在每个元素实例上递归调用“Render”或类似的东西,将元素添加到树结构并呈现为完整的 HTML 页面,包括样式。

我可以想象这样一个库可能有用的许多方面:

  • 构建跨浏览器渲染问题的框架意识,甚至是多设备/屏幕尺寸支持。然后有可能构建一个网页,并立即使其与所有主要浏览器一起工作。

  • 使用反射构建具有极好的 IntelliSense 等的 HTML 编辑器。编辑器还可以具有 WYSIWIG 模式,允许动态重新排列元素,而不会生成格式错误的标记。

  • 对网站的 SEO、合规性、可访问性等进行一些非常强大的审计。

  • 执行非常精细的智能缓存,直至元素级别。

是否已经考虑或尝试过类似的事情?

(注意:我意识到 ASP.NET 在其“HtmlControls”命名空间下有类似的东西,但它并不代表所有 HTML 元素,而且它包含的元素的建模不够准确。另外, ASP.NET webforms 上的 HTML 元素被视为文本文件并在运行时解析,而不是被编译为强类型类。)

(另一个说明:我认为Google Web Toolkit与这个想法有一些相似之处,尽管它是用 Java 编写的,并且更多地针对 Ajax/Javascript/DOM,而不是基于标准的 XHTML、CSS 和 Javascript)

4

3 回答 3

1

我想你知道这已经(部分)是 ASP.NET 的工作原理...... ASP.NET 有一些HTML 类的类,但它还没有完全构建出来。因此,虽然一般的答案是肯定的,但它已经被考虑过了,但它并不是一个完整的想法。

于 2009-07-02T03:41:22.103 回答
1

只要您使用 xhtml,您就应该能够使用它的xml 模式来生成可以构建的类。然后,您可以使用 xml(反)序列化从您的 xhtml 文档生成对象。

于 2009-07-02T08:41:51.923 回答
0

你看过ASP.NET吗?您的描述(大部分)听起来与 ASP.NET 完全一样。显然它不能回答你所有的问题,但它确实回答了大部分问题。

于 2009-07-02T03:39:56.160 回答