ASP.NET MVC列表排序方法不适用

时间:2018-12-06 01:36:40

标签: c# list sorting model-view-controller

我有一个对象列表。我想按其值对它进行排序。但是排序功能显示错误,不能在Visual Studio中应用。我使用ASP.NET MVC 5控制器来开发此代码。

class keyValues
{
    string key;
    int value;

    public keyValues(string k, int v)
    {
        this.key   = k;
        this.value = v;
    }
}

在我的控制器中

List<keyValues> generatedNumberList = new List<keyValues>();

generatedNumberList.Add(new keyValues("num1", 50));
generatedNumberList.Add(new keyValues("num2", 25));
generatedNumberList.Add(new keyValues("num3", 32));
generatedNumberList.Add(new keyValues("num4", 64));
generatedNumberList.Add(new keyValues("num5", 46));

var orderByValue = generatedNumberList.OrderBy(x=>x.value);
var sortByValue = generatedNumberList.Sort();

enter image description here

1 个答案:

答案 0 :(得分:2)

  1. x.value产生错误,因为value是私有的。
  2. Sort返回void,因此编译错误。
  3. 鉴于代码中的命名,您似乎来自Java。 在C#中,您应该偏爱PascalCase而不是camelCase
  4. 我不会尝试通过创建KeyValue类来重新发明轮子,而是研究KeyValuePairTupleValueTuple
  5. 在C#中查看Auto-Implemented Properties