我想創建一個類,其最終結果是創建一個XML文檔。目前,該類由嵌套類組成,每個類構建XML文檔的一部分。我所關心的是我應該如何將內部類的結果與最終輸出結合起來。構建XML的內部類 - 如何讓外部類將它們放在一起?
外部類應該將XmlTextWriter
的實例傳遞給構建特定節的每個內部類,還是每個內部類只需輸出XML的字符串表示形式,而外部類可以將它們組合在一起?
我已經把一個小例子來幫助說明...
Public Class PatientInfoBuilder
'Instance of XmlTextWriter pass to each class'
Private writer as XmlTextWriter
'This class builds XML containing Patient first name, last name, etc ..'
Private Class PatientInfo
Private mWriter as XmlTextWriter
'Constructor accepts XmlTextWriter instance'
Public Sub New(ByRef writer as XmlTextWriter)
mWriter = writer
End Sub
Public Sub BuildXML()
mWriter.WriteStartElement('FirstName')
...
...
mWriter.WriteEndElement()
End Sub
End Class
'This class builds a list of patient medications'
Private Class PatientMedications
Private mWriter as XmlTextWriter
'Constructor accepts XmlTextWriter instance'
Public Sub New(ByRef writer as XmlTextWriter)
mWriter = writer
End Sub
Public Sub BuildXML()
mWriter.WriteStartElement('Medication')
...
...
mWriter.WriteEndElement()
End Sub
End Class
End Class
的代碼是不完整的,但我希望它給的什麼,我試圖完成一個想法。我需要找到一種方法來將XML部分收集在一起以作爲單個文檔輸出。我的例子是在VB.NET中,但在C#中的答案也是受歡迎的。感謝您的任何建議。
**請注意,據我所知,有評論尾隨撇號。我這樣做是爲了讓顏色編碼標記在SO中正確顯示。
您使用的是什麼版本的.NET?除非你仍然使用.NET 1.1,否則不應該使用'XmlTextWriter'。改爲使用'XmlWriter'(和'XmlWriter.Create')。 – 2011-02-25 19:37:13