2つのデータベースフィールドがあり、それらの値に基づいて結果をフィルタリングする必要があります。Entity Frameworkでは、where句でsubstractを使用できますか?
例として、お客様の最大の保管場所と使用中の保管場所です。誰かがより多くのスペースを使用しているかどうかを判断するために、私はこのようにしたいと思います。
var temp = db.Storege.Where(o => (o.max_storage_places - o.places_in_use) < 0).ToList()
これは機能しません。これは可能ですか、私は別のアプローチを使用すべきですか?
EDIT:
データベースは、MySQLであり、トラフEntity Frameworkを使用しています。両方のフィールドのデータ型は、データベースのINT値です。
私は次のバージョンが
var temp = db.Storege.Where(o => o.max_storage_places < o.places_in_use).ToList()
根本原因提案された動作していることをテストした:私はより深く、この問題を調査し、これは、MySQL関連の問題であることが判明した
を。フィールドは何らかの理由で "Unsigned INT"だったので、データベースは計算の負の値を理解できませんでした。
どちらの例は
この 'max_storage_palces'のデータ型は何ですか? – Sampath
なぜこれが機能していないと思いますか? – tym32167
「動作していない」場合はどうなりますか?データ型(DBと.NETの両方)は何ですか?なぜ 'o.max_storage_palces