如果我看一下Razor View引擎,我会看到一个非常好的、简洁的语法,它与生成html没有特别的联系.所以我想知道,在"普通的".NET环境中使用ASP.NET之外的引擎(例如,生成文本、代码等)有多容易?
任何指针,例子, comments 或解释都是受欢迎的.
如果我看一下Razor View引擎,我会看到一个非常好的、简洁的语法,它与生成html没有特别的联系.所以我想知道,在"普通的".NET环境中使用ASP.NET之外的引擎(例如,生成文本、代码等)有多容易?
任何指针,例子, comments 或解释都是受欢迎的.
这里有两个问题:
<tags>
来确定代码和标记之间的转换.您可能可以使用它生成任何文本,但当您的输出与Razor关于您的意图的假设不匹配时,您可能会遇到问题.例如,虽然这是有效的Razor代码(因为<div>
标签):
@if(printHello) {
<div>Hello!</div>
}
以下代码段无效(因为Hello!仍被视为代码):
@if(printHello) {
Hello!
}
但是,有一个特殊的<text>
标记可用于强制多行块转换(<text>
标记将不会被渲染):
@if(printHello) {
<text>Hello!
Another line</text>
}
还有一种较短的语法可以使用@:
强制单行转换:
@if(printHello) {
@:Hello!
}