Asp.net mvc ASP.NET MVC属性

Asp.net mvc ASP.NET MVC属性,asp.net-mvc,ckeditor,custom-attributes,Asp.net Mvc,Ckeditor,Custom Attributes,我需要创建一个属性,该属性将导致文本区域成为富文本编辑器(/)。我将如何实现它 例如,我的模型是: public class MyModel { [RichText] public string Detail {get;set;} } 渲染时,它应该显示一个丰富的文本区域。假设您至少使用MVC2,请使用[UIHint(“RichText”)指示希望它是RichText字段,然后创建一个名为richttext.cshtml(或.aspx或您正在使用的Whatview视图技术)的E

我需要创建一个属性,该属性将导致文本区域成为富文本编辑器(/)。我将如何实现它

例如,我的模型是:

public class MyModel
{
    [RichText]
    public string Detail {get;set;}
}

渲染时,它应该显示一个丰富的文本区域。

假设您至少使用MVC2,请使用
[UIHint(“RichText”)
指示希望它是RichText字段,然后创建一个名为richttext.cshtml(或.aspx或您正在使用的Whatview视图技术)的EditOrteTemplate,并定义要使用的HTML(您必须创建html才能使用您正在使用的任何富文本编辑器)

然后在视图中使用EditorFor(),它应该可以工作


您还可以使用
[DataType(DataType.Html)]
然后创建一个Html.cshtml编辑器模板。

假设您至少使用MVC2,使用
[UIHint(“RichText”)]
指示您希望它是一个RichText字段,然后创建一个名为RichText.cshtml(或.aspx,或您正在使用的任何视图技术)的编辑器模板并定义要使用的HTML(您必须创建HTML以使用您正在使用的任何富文本编辑器)

然后在视图中使用EditorFor(),它应该可以工作


您还可以使用
[DataType(DataType.Html)]
然后创建一个Html.cshtml编辑器模板。

您可以继承
数据类型属性

public class RichTextAttribute : DataTypeAttribute
{
     public RichTextAttribute() : base("RichText") {}
}
例如,如果您想阻止某些HTML标记,从而避免XSS攻击或其他攻击,您甚至可以在该属性中添加验证

如另一个答案中所述,您只需在View\Shared\EditorTemplates文件夹和显示属性使用的视图中为RichText.cshtml或RichText.ascx添加一个编辑器模板:

Html.EditorFor(m => m.Detail)

在编辑器模板中,您可以添加代码以创建
文本区域(或以调用TinyMCE的方式),然后可以在母版页中注册一些脚本,将TinyMCE附加到编辑器模板输出的任何标记。

您可以继承
数据类型属性

public class RichTextAttribute : DataTypeAttribute
{
     public RichTextAttribute() : base("RichText") {}
}
例如,如果您想阻止某些HTML标记,从而避免XSS攻击或其他攻击,您甚至可以在该属性中添加验证

如另一个答案中所述,您只需在View\Shared\EditorTemplates文件夹和显示属性使用的视图中为RichText.cshtml或RichText.ascx添加一个编辑器模板:

Html.EditorFor(m => m.Detail)

在编辑器模板中,您可以添加代码以创建
文本区域
(或以任何方式调用TinyMCE)然后,您可以在母版页中注册一些脚本,将TinyMCE附加到编辑器模板输出的任何标记上。

你不断地提问、得到答案、然后忽略它们太可惜了。安德鲁,我已经接受了答案。你需要检查你的电子邮件以及我的问题。谢谢。我没有看到任何我要向我发送的邮件“我还没有回复你。我想我没有发布任何关于你问题的答案。很遗憾你一直在问问题,得到答案,然后忽略它们。安德鲁,我已经接受了答案。你需要检查你的电子邮件以及我的问题。谢谢。我没有看到你给我的任何没有回复的邮件。我不知道。”不管怎样,我想我已经发布了你的问题的任何答案。谢谢保罗和迈斯特曼。抱歉耽搁了。效果非常好。谢谢保罗和迈斯特曼。抱歉耽搁了。效果非常好。