我有一个没有root的XML文件.我无法改变这一点.我试图解析它,但XDocument.Load不会这样做.我试图设置ConformanceLevel.Fragment,但我仍然抛出异常.有人有解决方案吗?
我尝试过XmlReader,但事情搞砸了,无法正常工作.XDocument.Load效果很好,但是如果我有一个有多个根的文件,它就没有.
我想提出一个linq语句,我想只选择数组中具有最高版本的一些项目.给定一系列应用程序,例如:
[{name="Adobe", version=1},
{name="Adobe", version=2},
{name="Adobe", version=3},
{name="VLC", version=1},
{name="VLC", version=2},
{name="VLC", version=3}]
Run Code Online (Sandbox Code Playgroud)
我需要一个linq才能选择一个adobe应用程序,一个版本最高的应用程序和一个VLC应用程序.结果应如下所示:
[{name="Adobe", version=3},
{name="VLC", version=3}]
Run Code Online (Sandbox Code Playgroud)
到目前为止我得到的最好的是:
var names = apps.Select((n => n.name)).Distinct();
foreach (var name in names)
{
var latest = apps.Where(n => n.name == name).OrderByDescending(n => n.version).FirstOrDefault();
//add latest to the new appList
}
Run Code Online (Sandbox Code Playgroud)
我一直在考虑是否有一种更简单,只有linq的方法来做到这一点.有什么建议?
谢谢.