1
私はEntity Frameworkを使用しています。私は2つのテーブル:Unit
とMessage
を持っています。彼らはそのようになります。他のテーブル値に基づいてJOINのデータセットをフィルタリングします
public class Unit
{
int id;
DateTime date;
}
public class Message
{
int id;
int unitId;
DateTime date;
}
は、私はすべてのMessage
ごとUnit
に参加したいです。
DateTime from = DateTime.Now;
db.Unit.Join(
db.Message.Where(m => m.date >= from),
u => u.id,
s => s.unitId,
(u, s) => new
{
MessageTime = s.date,
UnitTime = u.date
}
)
.AsEnumerable()
.Select(r => new
{
MessageTime = MessageTime,
UnitTime = UnitTime
}
)
.ToList()
Unit
クラスは、私が参加をしているときに使用するdate
が含まれています
私はそのような何かを行います。私は、Message
からdate
> = unit.date
のメッセージを取りたいだけです。私は.Where(x => x.UnitTime >= x.MessageTime)
をやることができることを知っていますが、後で結合してフィルタリングしたくありません。
他のテーブルに基づいてフィルタリングすることはできますか?
私は実際に感謝、になってしまったものですこと! – Nikola