重複の可能性:
LINQ: 動的文字列パラメーターを使用した orderby
OrderBy() 句を使用して IEnumarable をソートしています。注文したいフィールドを含む値を持つ文字列のリストです。現在、各プロパティ名に switch ステートメントを使用しています。
swich (propertyname)
case "name":
list = list.OrderBy(l=>l.name).ToList();
break;
case "property":
list = list.OrderBy(l=>l.property).ToList();
.....
文字列「propertyname」を orderby 句の属性として使用する簡単な解決策はありますか?
私がそれを行ったとき、私は望ましいとはほど遠い解決策を得ました。各プロパティをコーディングする作業が増えるだけでなく、将来何らかの属性が追加された場合、この更新は私が書いている関数で忘れられます。
誰かがより良い解決策を持っていることを願っています。