2012-03-16 8 views
0

編集GROUPBY機能は、私が馬鹿だと、私のコントローラのタイプミスがあったブール

で注文する、それは今、すべての良いことです。 (非常に長い週だった)


これはわかりません。私は自分が望むものを別の方法で実装しようと考えていますが、これを行う方法があるかどうかを知りたいのです。

私はIQueryableオブジェクトを持っています。私のテーブルには、タイプboolのカラムがあり、それをテーブルでtrue/falseで注文したいと考えています。

は、ここで私が試したものの線に沿って何か:

mQueryableObject.OrderBy(model => model.myBoolean); 

これは私が半分予想通り、私に期待される結果を与えるものではありません。

したがって、IQueryableオブジェクト(LINQ)をブール値(true/false)で並べ替える方法はありません。

私は本当にいくつかの洞察に感謝します。

+0

真偽値を最初に偽値にしますか? –

+0

あなたの期待している結果は何ですか?何が間違っていますか? –

+0

@ShaiCohenまあ、注文のために、それは私が他のもののために使用するOrderByDescendingを持っているので、私はそれをどちらかの方法で変更することができるので、彼らはどの順序に来るかは関係ありません。 – bbedward

答えて

1

私は期待していたほどの結果を得られません。

ここで間違っていることは分かりません。 OrderByコールが実際にという文としてという呼び出しを受け取っているかどうかは不明です。もしそうなら、それは問題です.LINQ演算子は既存のクエリを変更しません。彼らは新しいクエリを返します。たとえば、このあなたが必要なすべてのことがあります

mQueryableObject = mQueryableObject.OrderBy(model => model.myBoolean); 

これは仕方によって、truefalseをソートします。あなたがそれを逆にしたい場合は、次のようにしてください:

mQueryableObject = mQueryableObject.OrderBy(model => !model.myBoolean); 
+0

私は、あなたが何を記述しているのか、真実の前に真で偽であることを期待しています。しかし、私はランダムな結果を得ています。それはコード内のどこかにあるはずです。問題が見つかった場合は更新します。追加情報があれば教えてください。 – bbedward

+0

答えを受け入れると、私は適切に質問していたことを伝え、問題が他の場所にあると判断するのを助けました – bbedward

関連する問題