1

我有一个基于 asp.net 3.5 的动态数据功能的站点。一切都很好,但我想通过具有 XML 数据类型的列添加标记功能。我已经创建了专栏并添加了适当的架构,但它显示为只读,并且脚手架不会显示或修改该字段。

所以,我有几个问题:

  1. 为了使我的脚手架能够看到这个 xml 列,我需要做什么?
  2. 在不直接编辑所有 xml 的情况下,我将如何通过脚手架编辑标签?
    • 我会向元数据中的 getter/setter 添加逻辑吗?
    • 大概我需要一个自定义的 fieldTemplate,我会添加 xml 解析吗?
4

1 回答 1

2

我希望这是有帮助的。正如您所提到的,您必须为您的 XML 数据创建一个字段模板。:

[MetadataType(typeof(DocumentMetadata))]
[DisplayName("Documents")]
public partial class Document {

    [ScaffoldColumn(true)]
    [Display(Name = "Some Xml")]
    public string SomeXml
    {
        get
        {
            return "<note><to>Joe</to><from>Mary</from><heading>Reminder</heading><body>Hello World</body></note>"
        }
    }
}

public class DocumentMetadata
{
    [ScaffoldColumn(false)]
    public object Id { get; set; }

    [Display(Name="Type")]
    public object DocumentType { get; set; }

    [UIHint("CustomXmlFieldTemplate")]
    [Display(Name="Some XML")]
    public object SomeXml { get; set; }
}
于 2011-06-23T18:59:30.367 回答