对字符串数据进行数字排序 (ASP.NET C#)
我有一个 gridview,其列包含以下数据行:
1
2a
2b
6
8a
10a
列的标题有一个 sortExpression,因此我可以单击对其进行排序
如果我对这些数据进行排序,我将按以下顺序获取它:
1
10a
2a
2b
6
8a
..其中 10a 行出现是因为 1
我希望它按数字排序,但我的值是字符串。 数据需要按数字排序,然后按末尾的字母排序(如果有字母),
如何对从数据源拉回的数据执行此操作? 请记住,这是在网格视图中。
I've got a gridview with column containing the following rows of data:
1
2a
2b
6
8a
10a
The header of the column has a sortExpression so I can click to sort it
If I do sort this data, I get it in this order:
1
10a
2a
2b
6
8a
..where the 10a row comes up because of the 1
I want it to sort numerically, but my values are strings.
The data needs to sort by number and then by the letter at the end (if a letter is there)
How can I do this for my data the being pulled back from a datasource?
Keep in mind that this is in a gridview.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您有字符串列表,则可以使用自定义比较对它们进行排序。这是它的一些代码:
If you have a list of strings then you can sort them using a custom comparison. Here is some code for it:
把数字和字符串分开就可以达到你想要的效果
split the number and string and you can achieve what you want
CodeProject 有一个我偶尔使用的工具。
http://www.codeproject.com/KB/recipes/csnsort.aspx
CodeProject has one that I use occasionally.
http://www.codeproject.com/KB/recipes/csnsort.aspx