对包含两个不同小数位的发布版本进行排序
本文关键字:版本 排序 布版本 包含两 小数 | 更新日期: 2023-09-27 18:24:27
目前,我从一个使用Selenium的网站上获得Release Version
,并将其存储为字符串。
发布版本为14.14
、14.14.4
、14.15
、14.15.1
、14.15.2
等。
我需要使用C#对它们进行排序,数据库管理员需要能够使用SQL对它们进行分类。所有Release Version
项目当前都存储为字符串。
如果重要的话,我会使用LINQ to SQL来完成我所有的SQL工作。
在C#和SQL中对它们进行排序的最佳方式是什么?作为字符串?或者我应该转换它们?如果转换它们,将使用什么数据类型?
在C#中,您可以将它们存储为(或至少转换为)Version
,它也支持正确的排序:
var strings = new List<string> { "14.14", "14.14.4", "14.15", "14.15.1", "14.15.2" };
var versions = strings.Select(v => Version.Parse(v)).ToList();
versions.Sort(); // or OrderBy in the LINQ query above
这里有一个问题展示了如何在数据库中对版本进行排序:我如何对a';版本号';列一般使用SQL Server查询
如果您可以来回转换它,那么将版本转换为int。由于版本最多有3个部分,只需将其转换为{0}*10000+{1}*100+{2}