私はいくつかの奇妙な理由から、.Select()の後に.Where()をチェーンできないことを認識しました。コード変数に基づいてLINQで条件文を実行する方法は?
var eventCalendar = db.EventCalendars.Where(q => q.Date == e.Day.Date);
if (!isLogged)
{
eventCalendar = eventCalendar.Where(q => q.ClientFlag == true);
}
eventCalendar = eventCalendar.Select(q => q.EnvironmentId).Distinct();
が、今、私は私が間違っているのは何.Select
"Cannot implicitly convert type 'System.Linq.IQueryable<short>' to 'System.Linq.IQueryable<IT_Portal.EventCalendar>'. An explicit conversion exists (are you missing a cast?)"
で取得し、エラー?簡単に言えば、特定の環境でイベントが発生した場合にユーザーに通知できるように、カレンダーイベントテーブルから個別の環境IDを取得できます。最後に、ユーザーがログインしていない場合は、クライアント(ClientFlag)に対して表示されるようにマークされたイベントから環境IDのみを取得します。
<*ここに聖音を挿入する*>ありがとうございました!!! –