Megosztás a következőn keresztül:


Üres terület XML-literálokban (Visual Basic)

Amikor a Visual Basic fordító LINQ to XML objektumot hoz létre, az XML-literálból csak a jelentős üres szóköz karaktereket tartalmazza. A felesleges fehér szóköz karakterek nincsenek figyelembe véve.

Jelentős és jelentéktelen szabad terület

Az XML-literálok üres szóköz karakterei csak három területen jelentősek:

  • Ha attribútum értékként szerepelnek.

  • Ha egy elem szöveges tartalmának részei, és a szöveg más karaktereket is tartalmaz.

  • Ha beágyazott kifejezésben vannak egy elem szöveges tartalmához.

Ellenkező esetben a fordító a szóköz karaktereket jelentéktelennek tekinti, és nem veszi fel őket a LINQ to XML objektumba mint litterális XML-objektumokat.

Ha egy XML-literálban jelentéktelen üres területet szeretne belefoglalni, használjon olyan beágyazott kifejezést, amely egy sztringkonstanst és a szóközt tartalmazza.

Megjegyzés:

Ha az xml:space attribútum egy XML-elemkonstansban jelenik meg, a Visual Basic fordítója tartalmazza az attribútumot az XElement objektumban, de az attribútum hozzáadása nem változtatja meg, hogy a fordító hogyan kezeli a szabad területet.

Példák

Az alábbi példa két XML-elemet tartalmaz, külső és belső elemeket. Mindkét elem üres szóközt tartalmaz a szöveges tartalomban. A külső elem fehér területe jelentéktelen, mert csak fehér területet és XML-elemet tartalmaz. A belső elem fehér területe azért jelentős, mert fehér szóközt és szöveget tartalmaz.

Dim example As XElement = <outer>
                              <inner> 
                                  Inner text 
                              </inner>
                          </outer>

Console.WriteLine(example)

Futtatáskor ez a kód a következő szöveget jeleníti meg.

<outer>
  <inner>
                                          Inner text
                                      </inner>
</outer>

Lásd még