用于Model的ASP.NET MVC4自定义格式化方法

时间:2013-10-24 19:09:11

标签: asp.net-mvc razor model custom-formatting

 <div>
Email: 
<a id="email href="mailto:@Model.Contact.Email">@Model.Contact.Email.ToStringMyCustomFormatted</a>
</div>

我想创建自定义格式化方法并像这样应用它。 (以同样的方式我们可以将ToString()方法应用于此。) 我不想使用JavaScript来使用Document.Ready()进行任何格式化。 简而言之,我想扩展ToString方法,如ToStringMyCustomFormatted,通过它我可以将自己的规则应用于字符串输出。 我甚至不确定是否可以这样做。 请启发!

1 个答案:

答案 0 :(得分:1)

您可以使用简单的C#扩展方法(或直接在您的Contact模型上):

public static class YourContactModelExtensions {
    public static string ToStringMyCustomFormat(this YourContactModel m) {
        // TODO
    }
} 

或者如果您希望它适用于所有字符串:

public static class StringExtensions {
    public static string ToMyCustomFormat(this string s) {
        // TODO
    }
} 

或Razor页面上的Razor助手功能:

@helper ToStringMyCustomFormat(YourContactModel m) {
   @* TODO *@
}

@helper ToMyCustomFormat(string s) {
   @* TODO *@
}