输出格式化的代码,以在asp.net MVC中查看

本文关键字:MVC net asp 以在 格式化 代码 输出 | 更新日期: 2023-09-27 17:51:18

我希望有一个解决方案,我有一个示例MVC应用程序,我想将格式化的代码片段输出到浏览器如下所示

ViewBag.PageSource = "
    public class RegisterViewModel
    {
        [Required]
        [Display(Name = "User name")]
        [RegularExpression("[a-zA-Z0-9]{2,64}", ErrorMessage = "username must contain  letters or numbers only, and be between 2 and 64 characters long ")]
        public string UserName { get; set; }
    }
";

这种事可能吗?

我在主布局文件中有一个模态弹出窗口,我希望它包含每个视图的源(模型/控制器)片段,通过将其放置在每个视图的viewbag变量

输出格式化的代码,以在asp.net MVC中查看

不要尝试在控制器上这样做。这就是视图的作用。

code.google.com,Stackoverflow使用代码美化。

你可以和前标签一起使用:

<pre class="prettyprint">
    public class RegisterViewModel<br/>
    {<br/>
        [Required]<br/>
        [Display(Name = "User name")]<br/>
        [RegularExpression("[a-zA-Z0-9]{2,64}", ErrorMessage = "username must contain    letters or numbers only, and be between 2 and 64 characters long ")]<br/>
        public string UserName { get; set; }<br/>
<br/>
}<br/>
</pre>

是的,一切皆有可能。在第一个"前面加上@符号,多行字符串就可以了。

那么你需要对制表符做点什么。您可以使用<pre>标记或将制表符替换为固定宽度的div。

如果代码段是动态生成的,则必须使用JavaScript格式化。

例如

SyntaxHighlighter是一个很好的客户端解决方案:

http://alexgorbatchev.com/SyntaxHighlighter/

在其他情况下看这里

Jon Skeet提供了一个可供公众使用的代码格式化器:

http://csharpindepth.com/CodeFormatterTool.aspx

在我看来,SO使用这个https://code.google.com/p/google-code-prettify/

对于HTML5你应该使用<pre><code>//your code here</code></pre>