2
私はこのようなクエリのLINQツーSQLを使用しています:LINQどこで文または
public static List<MyModel> GetData(int TheUserID, DateTime TheDate)
using (MyDataContext TheDC = new MyDataContext())
{
var TheOutput = from a in TheDC.MyTable
where a.UserID == TheUserID
(where a.Date1.Month == TheDate.Month && where a.Date1.Year == TheDate.Year)
OR
(where a.Date2.Month == TheDate.Month && where a.Date2.Year == TheDate.Year)
group a by a.Date1.Date AND by a.Date2.Date into daygroups
select new MyModel{...};
私はORとANDステートメントの仕事をするためにこれを書いどうすればよいですか?私は||と& &がありますが、うまくいきません。私はこの質問に固執しています。
基本的に1ヶ月以内の日数のリストを返し、MyModelではカウントします。たとえば、ある列では、ある日に設定された予定の数を数え、別の列では、同じ日に出席した予定の数を数えます。 Date1は、予定が設定されている日付を示し、Date2は、予定に参加した日付を示します。たとえば、2011年3月3日に、私は4つの予定を設定しました(Date1は2011年3月11日です)、将来のさまざまな日付(Date2)に設定されています。同じ日(3月3日は今回のDate2)には、過去に他の日に設定された他のいくつかの予定にも参加しました。
ありがとうございます。
私はそれを試みました、そして、それはまだ赤いところです。私はまだ試しています。 – frenchie
これで、余分なwhereステートメントを削除するということになりました。ここで、赤い下線はグループ文がどこにあるかです。 ANDステートメントでどのようにグループ化しますか? – frenchie
"グループ化"が間違っています。それはちょうど "AND"という言葉を含んでいます。複数のものでグループ化する場合は、「new {a = ..、b = ...}」を使用し、匿名タイプでグループ化します。 – vcsjones