私は2つの表、1つの注文と1つの製品を持っています。 OrderにはOrderID、OrderName、AccessIDがあり、ProductsにはProductID、ProductName、OrderIDがあります。これらのテーブルにはさらに多くのフィールドがありますが、これは私の問題に関連するものです。Linq表1をフィルタリングして表2から数えます。
それでは、私がやりたいことは、私は私が行うことができることを知って8つの未満の製品を持っている、とAccessIDは1
であるため、その受注コードと製品テーブル内の製品の最初のセットを取得し、あります2つのLINQステートメントで最初にAccessIDのOrdersでフィルターをかけて、Productsテーブルにループを作成してCountの最初のインスタンスを取得します。< 8これを行うには、おそらく1つのステートメントで可能です。あなたの助けと時間を
おかげで
これは私が今のところが出ていると、まだテストするたものです: -
public Order OrdersLessThanEightItems()
{
IEnumerable<int> orderId = null;
int accessID = 1;
Order order = (from o in db.Orders
where o.AccessID == accessID && o.Products.Count < 8
orderby o.Products.Count ascending
select o).FirstOrDefault();
return order;
}
こんにちはザ・パワー、中私の場合、その1対1の関係、すなわち、製品はいつでも1つの順序でしかないことができます。 – Johann
@Johannもしそれが1対1の関係であれば、注文の中に1つ以上の製品が存在することはありません。 – ThePower
ああ、申し訳ありませんが、私は、製品が注文している場合は、その製品が別の注文になることができないので、注文と商品の間に1対多の関係があることを意味します。私はまだテストする必要がある何かを思い付いて、私の質問を編集します – Johann