如何获得版本字符串的最大价值

How*_*eoh -5 c# linq

如何使用c#和LINQ从字符串集合中获取最大值?例:

List<String> lst = new List<String> { "1.0.0", "1.0.2", "1.0.15", "1.1.0" };
Run Code Online (Sandbox Code Playgroud)

示例1:-比较1.0.0和1.1.0,最大版本是1.1.0。
示例2:-比较1.0.2和1.0.15,最大版本是1.0.15。
示例3:-比较1.0.0和1.0.2,最大版本是1.0.2。

Gia*_*olo 5

考虑使用.Net Version 类

您可以从字符串创建它,并且它已经可以按照您所需的方式处理比较

    Version v1 = new Version("1.2.3.4");
    Version v2 = new Version("1.3.0");
    Console.WriteLine(v2>v1);
Run Code Online (Sandbox Code Playgroud)

就您而言,使用Linq,您可以

    List<String> lst = new List<String> { "1.0.0", "1.0.2", "1.0.15", "1.1.0" };

    Version maxVersion = lst.Select(s=> new Version(s)).Max();
    Console.WriteLine(maxVersion);
Run Code Online (Sandbox Code Playgroud)