我在jquery插件中知道一些SyntaxHighlighter,例如:
...........
但没有人对MVC Razor说:(
需要插件完全类似于在Razor中应用代码的样式stackoverflow.com,如此
@Html.ValidationSummary("Create was unsuccessful. Please correct the errors and try again.")
@using (Html.BeginForm()){
<p>
<label for="FirstName">First Name:</label>
@Html.TextBox("FirstName")
@Html.ValidationMessage("FirstName", "*")
</p>
<p>
<label for="LastName">Last Name:</label>
@Html.TextBox("LastName")
@Html.ValidationMessage("LastName", "*")
</p>
<p>
<label for="gender">Gender:</label>
@Html.RadioButton("gender", "Male", true) Male
@Html.RadioButton("gender", "Female", false) Female
</p>
<p>
<label for="Password">Password:</label>
@Html.Password("Password")
@Html.ValidationMessage("Password", "*")
</p>
<p>
<label for="Password">Confirm Password:</label>
@Html.Password("ConfirmPassword")
@Html.ValidationMessage("ConfirmPassword", "*")
</p>
<p>
<label for="Profile">Profile:</label>
@Html.TextArea("Profile", new { cols = 60, rows = 10 })
</p>
<p>
@Html.CheckBox("ReceiveNewsletter")
<label for="termsAndconditions" style="display:inline">I Agree</label>
</p>
<p>
<input type="submit" value="Register" />
</p>
}
有人知道这样做吗?
答案 0 :(得分:3)
根据this Meta thread,Stack Exchange使用Googles Code Prettify,因此您也应该考虑使用它。
专门针对Raxor MVC - 如果你看一下语法高亮显示器是如何工作的,很容易看出它如何突出你的例子。
Google Code Prettify在代码容器中查找类名以确定如何突出显示代码 - 根据我链接到的Meta线程,StackExchange使用post标签来确定要应用于引用代码块的类名,如果无法从标签中确定它,那么......使用默认值!
以下是StackExchange如何标记您的Razor MVC示例:
<pre class="default prettyprint prettyprinted">
<code>
<span class="lit">@Html</span>
....
</code>
</pre>
以下是StackExchange如何使用C#标记标记帖子中的示例:
<pre class="lang-cs prettyprint prettyprinted">
<code>
<span class="kwd">var</span>
...
</code>
</pre>
两者之间的区别在于您的示例使用默认语法高亮定义。