1

私が人々のリストを持っているとしましょう:

Var people = new List<Person>();

どこ

Public class Person {
Public string ReferenceString { get; set; }
}

参照文字列は数字の文字列であるため、リストに含まれている可能性があります。

Var person1 = new Person { ReferenceString = "12" };
Var person2  = new Person { ReferenceString = "11" };
Var person3 = new Person { ReferenceString = "14" };

私がやりたいのは、どういうわけか、最小の数値(この場合は「11」)を持つ参照文字列を取得することです。したがって、行のどこかでintに変換する必要があり、次のような行に沿って機能していたと思います。

people.Where(x => Int32.Parse(x.ReferenceString));

ただし、比較の方法がわかりません。

4

4 に答える 4

3

それをintに変換し、その値で並べ替えて、最初(最低)を取る必要があります。

Person lowPerson = people.OrderBy(p => int.Parse(p.ReferenceString)).First();

最小値のみが必要な場合:

int lowest = people.Min(p => int.Parse(p.ReferenceString));

ただし、そもそもintとして格納することを検討する必要があります。

于 2012-08-20T08:13:40.173 に答える
0

ReferenceStringは文字列であり、整数値を割り当てているため、コードでエラーが発生します。

データ型を変更できないと言ったので、変更できます

Var person1 = new Person { ReferenceString = "12" };
Var person2  = new Person { ReferenceString = '11" };
Var person3 = new Person { ReferenceString = "14" };

その場合は使用

var min = people.Min(x => Convert.ToInt32(x.ReferenceString));

どのペソンが最小のReferenceStringを持っているかを知りたい場合は、それを行うことができます。

var result = people.Where(x => x.ReferenceString == min.ToString());
于 2012-08-20T08:06:36.363 に答える
0

まるで数字を保存ReferenceStringしているかのように作ります。ReferenceInteger次に、Minメソッドを使用してレコードを取得できます。このような:

var person1 = new Person { ReferenceString = 12 };
            var person2 = new Person { ReferenceString = 11 };
            var person3 = new Person { ReferenceString = 14 };

            var people = new List<Person>();
            people.Add(person1);
            people.Add(person3);
            people.Add(person2);

            var returnValues = people.Where(x => x.ReferenceString == people.Min(y => y.ReferenceString));

ここで、ReferenceStringは整数型です。それに応じてプロパティの名前を変更することを検討してください。

于 2012-08-20T08:11:11.543 に答える
0

MoreLinqのMinByメソッドを使用すると、すべての人を並べ替える必要なしに、最小値の人を見つけることができます。これは、人が数人以上いる場合は非効率的です。

Person lowPerson = people.MinBy(p => int.Parse(p.ReferenceString));
于 2012-08-20T08:19:11.940 に答える