任何人(也许是一个XSL粉丝?)可以帮助我找到在使用XSL over ASP.NET MVC的网页上处理数据呈现的任何优势吗?
两种选择是:
使用XSL的ASP.NET(MVC/WebForms)
从数据库获取数据并将其转换为XML,然后使用XSL模板在不同页面上显示XML.
ASP.NET MVC
从数据库获取数据作为C#对象(或LinqToSql/EF-objects)并在MVC页面上使用内联代码显示它.
XSL的主要优点是在WebControls等许多不同页面上一致地显示数据.所以,如果我错了,请纠正我,ASP.NET MVC可以使用相同的方式,但使用强类型对象.请帮我看看XSL是否有任何好处.
我可以看到使用XSLT转换数据并将其显示给用户的主要好处如下:
数据已经是XML格式
数据遵循定义良好的模式(这使得使用XMLSpy等工具变得更加容易).
数据需要转换为许多不同的输出格式,例如PDF,WMP和HTML
如果这是您的数据的唯一输出,并且它不是XML格式,那么XSLT可能不是最佳解决方案.
同样,如果需要用户交互(例如编辑数据),那么最终会使用后端代码来处理更新,因此可能证明一项技术太过分了......
在使用XML转换时,我总是发现两个主要问题:
首先,它们往往很慢,必须先解析和验证整个XML文件,然后才能对它做任何事情.作为XML,它也过于冗长,因此比它需要的要大.
其次,转换的工作方式对代码来说有点痛苦 - 像XmlSpy这样的自定义工具有帮助,但它仍然是大多数开发人员习惯的不同模型.
目前,MVC非常快速且看起来非常有前景,但确实遭受了传统的Web开发问题<%
以及 %>
整个代码中的蜂鸣声.使用XML转换避免了这种情况,但更难以阅读和维护.