小编Dar*_*ody的帖子

C#XDocument加载多个根

我有一个没有root的XML文件.我无法改变这一点.我试图解析它,但XDocument.Load不会这样做.我试图设置ConformanceLevel.Fragment,但我仍然抛出异常.有人有解决方案吗?

我尝试过XmlReader,但事情搞砸了,无法正常工作.XDocument.Load效果很好,但是如果我有一个有多个根的文件,它就没有.

c# xml linq-to-xml

20
推荐指数
2
解决办法
1万
查看次数

从数组中选择最好的项目

我想提出一个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的方法来做到这一点.有什么建议?

谢谢.

c# linq arrays sorting

2
推荐指数
1
解决办法
92
查看次数

标签 统计

c# ×2

arrays ×1

linq ×1

linq-to-xml ×1

sorting ×1

xml ×1