在我的自定义视图引擎中,我希望事情变得更干净一些。到目前为止,我拥有的最丑陋的部分之一是iif
类型功能。它最终看起来像这样:
{= CssClass==null ? "" : "class=\""+CssClass+"\"" =}
它编译(它是一个 T4 模板,所以它只生成 C# 代码)相当于
Write(CssClass==null ? "" : "class=\""+CssClass+"\"");
我能想到的一种缩短方法是??
运算符,但是当你有类似的东西时,这并没有帮助Comments.Count==0
我几乎可以完全控制生成的 C# 代码以及视图中的语法,那么在我的设计中执行此操作的更好方法是什么?我的目标是更具可读性,但也相当简洁。那么我应该在我的视图引擎中允许哪些语法修改以使其看起来更好?