以下のようにサービスを呼び出すと、TruckNameとWebサイトのXML要素はnullになりますか?明らかに、要素はWebページのXMLに組み込まれています(以下のxmlを参照)。ArrayOf要素が最初であることに関連していると思いますか?以下は、メソッドGetInfo()を呼び出すコンソールアプリのコードでもあります。ArrayOfFoodTruck要素を削除する必要がありますか?もしそうなら、最も簡単な方法は何ですか。よろしくお願いします。
- <ArrayOfFoodTruck xmlns="http://schemas.datacontract.org/2004/07/WCFServiceLibrary" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
- <FoodTruck>
<Company i:nil="true" />
<DayOfWeek i:nil="true" />
<Location i:nil="true" />
<TimeOfDay i:nil="true" />
<TruckID>0</TruckID>
<TruckName>Truck 87</TruckName>
<Website>http://www.test.com</Website>
</FoodTruck>
- <FoodTruck>
<Company i:nil="true" />
<DayOfWeek i:nil="true" />
<Location i:nil="true" />
<TimeOfDay i:nil="true" />
<TruckID>0</TruckID>
<TruckName>Bon Me</TruckName>
<Website>http://www.test.com</Website>
</FoodTruck>
</ArrayOfFoodTruck>
これは私のコンソールアプリからの呼び出しです。
static void GetInfo()
{
XElement rootXml = XElement.Load("http://localhost:5150/getnames");
var FoodTruck = from C in rootXml.Elements()
select new { TruckName = (string)C.Element("TruckName"), WebSite = (string)C.Element("Website") };
foreach (var x in FoodTruck)
Console.WriteLine("{0}\r\n{1}", x.TruckName, x.WebSite);
Console.ReadKey();
}