如何优化此LINQ查询
本文关键字:LINQ 查询 优化 何优化 | 更新日期: 2023-09-27 18:20:23
我有以下xml,需要将其取消序列化为对象:
<animals>
<retrive>true</retrive>
<collection>
<cat>big</cat>
<dog>spot</dog>
<vetName>John Smith</vetName>
</collection>
</animals>
这是我使用LINQ:的尝试
private Animal GetAnimalFromXML(string xml)
{
var tempdata = (from c in data.Elements("collection")
select new
{
Cat = (string)c.Element("cat"),
Dog = (string)c.Element("dog"),
VetName = (string)c.Element("vetName"),
}).First();
return new Animal(){
Cat = tempdata.Cat,
Dog = tempdata.Dog,
VetName = tempdata.VetName
}
}
我不喜欢我必须使用临时对象,所以我想知道是否有可能绕过这个问题,将这个方法简化为一个查询?
谢谢,d.
无需使用临时数据
private Animal GetAnimalFromXML(string xml)
{
return (from c in data.Elements("collection")
select new Animal()
{
Cat = (string)c.Element("cat"),
Dog = (string)c.Element("dog"),
VetName = (string)c.Element("vetName"),
}).First();
}