有没有办法在 DLL 中包含一些 aspx/ascx 标记并使用它来动态生成文本?我真的只想将模型实例传递给视图并将生成的 html 作为字符串。类似于您可能对 XSLT 转换执行的操作,只是转换输入是 CLR 对象而不是 XML 文档。第二个好处是使用大多数团队成员都知道的 ASP.NET 代码隐藏标记。
实现此目的的一种方法是在进程中加载 MVC 视图引擎,并可能让它使用资源中的 ASPX 文件。似乎我可以以某种方式只调用 ViewEngine 并让它生成一个 ViewEngineResult。我不太了解 ASP.NET MVC,但不知道要拨打什么电话。
我认为这对于经典的 ASP 或 ASP.NET 是不可能的,因为控制模型与页面模型紧密相关,在这种情况下不存在。
单独使用 SparkViewEngine 之类的东西也会很酷,尽管没有那么有用,因为其他团队成员不知道语法。那时我还不如使用 XSLT(是的,我正在寻找一种避免 XSLT 的聪明方法)。