Zdravím. VB2008 Na webu jsem se dočetl, že operátor LIKE z SQL lze nahradit metodou Contains. V jednoduchých příkladech mi to fungovalo, pak jsem ale napsal tohle:
Dim souborB As XElement = XElement.Load("cenik.xml")
Dim partnos = _
From partno In souborB.Descendants("StoItem") _
Where (partno.Attribute("PartNo").Value.Contains("HLEDANYRETEZEC")) _
Select Kod = partno.Attribute("Code").Value
a tam mi to hlásí chybu, že Odkaz na objekt není nastaven na instanci objektu. a taky Obecný typ Iterator`1 byl použit s nesprávným počtem obecných argumentů v sestavení System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089. Tak já nevím. Kód
Dim souborB As XElement = XElement.Load("cenik.xml")
Dim partnos = _
From partno In souborB.Descendants("StoItem") _
Where (partno.Attribute("PartNo") = "HLEDANYRETEZEC") _
Select Kod = partno.Attribute("Code").Value
samozřejmě funguje, ale musí dojít k celkové shodě mezi porovnávanými hodnotami, tzn. není možné tímto způsobem vyhledat jen podle části hledaného řetezce, protože to nic nevrátí. Pokud mi někdo poradí, jak to tedy obejít, budu rád. Popř. mohu poslat kousek toho XML souboru pro zorientování.
|