généré un fichier xml avec une variable nommé "Date"
Bonjour,
Voici mon problème, je me rend compte après avoir écris mon code pour un outil, que le nom d'une variable d'une structure qui me permet de générer un fichier xml en sortie doit impérativement s'appeler "date", mais mon problème est que vb.net ne permet pas d'utiliser ce mot comme variable.
du coup je me sens coincé, je ne sais pas trop quoi faire maintenant que tout mon code est écrit:
Voici en substance mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Public Structure ValidationFile
Public Header As VHEADER
Public ValidationList() As Validation
End Structure
'Structure VHEADER
Public Structure VHEADER
Public XsdVersion As String
Public SessionStartDate As String
End Structure
'Structure VAL
Public Structure Validation
Public VDate As String
Public CardSerialNumber As String
Public CompanyCode As String
Public MediaType As String
Public CardType As String
Public ValidationStatusId As String
Public FailureReasonId As String
Public ValidationStateId As String
Public ProductStartValidity As String
Public ProductEndOfValidity As String
End Structure |
Je fais tout un traitement pour renseigner les valeurs de ma structure, puis je transforme cette structure en document xml
Code:
1 2 3 4 5 6 7
| Public function pValidationFileToXml(byval pValidationFile As ValidationFile) As XmlDocument
Dim doc As XmlDocument
doc = SerializeToXmlDocument(pValidationFile)
Return doc
End Function |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| Public Function SerializeToXmlDocument(input As Object) As XmlDocument
Dim ser As XmlSerializer = New XmlSerializer(input.GetType(), "http://monsite.com/validationFile")
Dim xd As XmlDocument = Nothing
Using memStm As MemoryStream = New MemoryStream()
ser.Serialize(memStm, input)
memStm.Position = 0
Dim settings As New XmlReaderSettings()
settings.IgnoreWhitespace = True
Using xtr As XmlReader = XmlReader.Create(memStm, settings)
xd = New XmlDocument()
xd.Load(xtr)
End Using
End Using
Return xd
End Function |
puis je sauvegarde mon fichier xml
Code:
1 2
| Dim pValidationFileXml As XmlDocument = pValidationFileToXml(pValidationFile)
pValidationFileXml.Save(Application.StartupPath & "\temp\" & "temp.xml") |
mais du coup je me retrouve avec ce champs "VDate" qui devrait s'appeler "Date" issu de la déclaration de la structure, le problème étant que je ne peux pas déclarer ce champs comme je le souhaite dans la structure car Date est un mot du langage VB.net
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <?xml version="1.0"?>
<ValidationFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://monsite.com/validationFile">
<Header>
<XsdVersion>1.9</XsdVersion>
<SessionStartDate>2020-05-28T10:20:19</SessionStartDate>
</Header>
<ValidationList>
<Validation>
<VDate>2020-05-28T10:38:35</VDate>
<CardSerialNumber>c35666f1</CardSerialNumber>
<CompanyCode>1</CompanyCode>
<MediaType>8</MediaType>
<CardType>6</CardType>
<ValidationStatusId>1</ValidationStatusId>
<FailureReasonId>0</FailureReasonId>
<ValidationStateId>1</ValidationStateId>
<ProductStartValidity>2020-05-28T00:00:00</ProductStartValidity>
<ProductEndOfValidity>2020-06-03T23:59:00</ProductEndOfValidity>
</Validation>
</ValidationList>
</ValidationFile> |
Merci pour vos idées et conseil.
cordialement,
yaume91