2009-08-20 33 views
1

我有一個基於asp.net 3.5的動態數據功能的網站。一切都很好,但我想通過一個XML數據類型的列添加標籤功能。我創建了列並添加了適當的模式,但它顯示爲只讀,並且腳手架不會顯示或修改該字段。如何使用asp.net動態數據編輯SQL Server XML數據字段

所以,我有幾個問題:

  1. 我需要做什麼才能讓我的腳手架看到這個XML列呢?
  2. 我該如何去編輯通過腳手架標籤而不直接編輯所有的XML?
    • 我會在元數據中爲getter/setter添加邏輯嗎?
    • 大概我需要一個自定義fieldTemplate,我會添加XML解析到它嗎?
+0

我能夠通過爲xml列添加UIHint來回答問題的第1部分。這使我相信,第2部分的答案將創建一個爲xml設計的fieldTemplate。 – 2009-08-20 15:38:34

回答

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; } 
} 
相關問題