2

我有一个具有此属性的模型:

[Required]
[Column(TypeName = "xml")]
public string Data { get; set; }

以及一个表示该数据的模型:

[XmlRoot("data")]
public class Data
{
    [Required]
    [XmlElement("id")]
    public Guid ID { get; set; }

    [Required]
    [XmlElement("name")]
    public string Name { get; set; }

    [Required]
    [XmlElement("value")]
    public object Value { get; set; }
}

是否可以将该属性绑定到数据模型?我想利用 MVC 表单控件,例如:

@Html.LabelFor(model => model.Name)
@Html.EditorFor(model => model.Name)
@Html.ValidationMessageFor(model => model.Name)

这可能以某种方式还是我将不得不手动序列化/反序列化 XML 并构建我自己的表单?

4

1 回答 1

0

我认为,public string Data { get; set; }您需要声明public Data Data { get; set; }以使 EditorFor 呈现自定义模型,而不是声明第一个模型。

但是,是的,您需要反序列化并创建自定义 .cshtml 编辑器或视图模板来显示数据。

于 2013-05-25T12:51:09.280 回答