0
這是我生成的XML文件:重命名默認的xmlns
<?xml version="1.0" encoding="utf-8"?>
<!--This document are generated by Apps. Please dont change any listed data here.-->
<q1:FilePenting xmlns:ksd="https://nerd.kekesed.id/xmlns/generic/v1" xmlns:q1="https://nerd.kekesed.id/xmlns/installer">
<q1:Perpustakaan>
<ksd:File PerluBanget="false">Ganteng</ksd:File>
<ksd:File PerluBanget="false">Ganteng2</ksd:File>
</q1:Perpustakaan>
</q1:FilePenting>
,我想刪除q1
的東西,它真的很煩人T^T
這裏是我的類:
<XmlRoot("FilePenting", Namespace:="https://nerd.kekesed.id/xmlns/installer")> _
Public Class RequiredFiles
<XmlArray("Perpustakaan"), _
XmlArrayItem("File", Namespace:="https://nerd.kekesed.id/xmlns/generic/v1")> _
Public Libs() As Berkas
<XmlNamespaceDeclarations()> _
Public xmlns As New XmlSerializerNamespaces
Sub New()
xmlns.Add("ksd", "https://nerd.kekesed.id/xmlns/generic/v1")
End Sub
End Class
Public Class Berkas
<XmlText()> _
Public NamaFile As String
<XmlAttribute("version", namespace:="https://nerd.kekesed.id/xmlns/generic/v1")> _
Public VersiFile As String
<XmlAttribute("PerluBanget")> _
Public PerluBanget As Boolean = False
Sub New()
End Sub
End Class
這是串行器代碼:
Private Sub Button_Click(sender As Object, e As RoutedEventArgs)
Dim FileBrow As New Microsoft.Win32.SaveFileDialog
With FileBrow
.Title = "Init XML Save File"
.Filter = "XML File (*.xml)|*.xml"
.ShowDialog()
If Not .FileName Is Nothing Then
'mulai bikin objek dan save dan lain lain lain lain
Dim x As New IsiSetup.RequiredFiles()
x.Libs = {New Berkas() With {.NamaFile = "Ganteng"}, New Berkas() With {.NamaFile = "Ganteng2"}}
Dim Aturannya As New XmlWriterSettings() With {.Indent = True, .IndentChars = " ", .NewLineChars = vbNewLine}
Dim penulis As New XmlSerializer(x.GetType)
Dim Xmlnya As XmlWriter = XmlWriter.Create(.FileName, Aturannya)
Xmlnya.WriteComment("This document are generated by Apps. Please dont change any listed data here.")
Dim Ns As New XmlSerializerNamespaces()
Ns.Add("", "")
penulis.Serialize(Xmlnya, x, Ns)
'done
Xmlnya.Close()
End If
End With
End Sub
我想刪除默認的xmlns像w3c等東西,並將默認的xmlns添加到根。
如何做不用q1
命名爲xmlns?我的意思是,我希望它是xmlns="https://nerd.kekesed.id/xmlns/installer"
。
更新
我不希望它從外部類中聲明。因爲我想在很多項目中聲明它,所以在課堂外宣佈並不是一個乾淨的解決方案。
謝謝!
嘗試設置'Ns.Add(「」,「https://nerd.kekesed.id/xmlns/installer」)'。 –
啊,我忘了提及我不希望它在課堂外宣佈。每次我需要申報課程時,它都不會不變。 – Kekesed
你爲什麼在乎使用什麼前綴?它不會更改文件的*信息內容*。 –