我希望该方法具有特定的返回类型,但不知何故我无法使其工作。
我有一个 XML 结构:
<Notifications>
<Alerts>
<Max>3<Max/>
<Med>2<Med/>
<Min>1<Min/>
</Alerts>
</Notifications>
我想得到 , ,Max
的Med
值Min
。但要点是我根本不想要任何 foreach 循环,我只希望该方法具有 List<string> 返回类型,或者更好地创建通用返回类型。
关键是,我没有任何自定义类(我不想拥有它)来填充它的属性。
这就是我所知道的,但是我在“List()”匿名方法上遇到了一个错误:
Here it returns:
List<string> items = GetAlerts();
//method to read:
public List<string> GetAlerts()
{
return xmlDoc1.Descendants("Notifications").Elements("Alerts").Select(s => new
{
MAX = s.Element("Max").Value,
MED = s.Element("Med").Value,
MIN = s.Element("Min").Value
}).ToList(); //error on this line
}
----------
这个方法看起来会是一个通用的返回类型吗?这是不行的:
Here it returns:
List<object> items = setBLL2.GetAlert<List<object>>();
public T GetAlert<T>() where T:class
{
return (T)xmlDoc1.Descendants("Notifications").Elements("Alerts").Select(s => new
//ERROR up here before (T
{
MAX = s.Element("Max").Value,
MED = s.Element("Med").Value,
MIN = s.Element("Min").Value
}).ToList();
}
错误信息是:
无法将类型“System.Collections.Generic.List”转换为“T”