按字符串中的整数排序依据

Zia*_*ani 2 c#

我在我的C#应用​​程序中遇到了问题...我在数据库中有一些学校课程,例如8-B,9-A,10-C,11-C等......当我使用order by子句时为了对它们进行排序,字符串比较将结果表示为

10-C
11-C
8-B
9-A
Run Code Online (Sandbox Code Playgroud)

但我希望在字符串中存在的第一个整数的基础上进行整数排序...即

8-B
9-A
10-C
11-C
Run Code Online (Sandbox Code Playgroud)

希望你能理解......我已经尝试过了,但它会抛出异常

var query = cx.Classes.Select(x=>x.Name)
                .OrderBy( x=>  new string(x.TakeWhile(char.IsDigit).ToArray()));
Run Code Online (Sandbox Code Playgroud)

请帮帮我...想要在课程的基础上订购....

And*_*ius 5

也许Split会吗?

.OrderBy(x => Convert.ToInt32(x.Split('-')[0]))
.ThenBy(x => x.Split('-')[1])
Run Code Online (Sandbox Code Playgroud)