0
1つの表は様々なスポーツを保持している..私は2つのデータベーステーブルを持っている想像:述語ビルダー号
|ID| |Sport|
1 Baseball
2 Basketball
3 Soccer
第二の表は、スポーツ、テーブルのID
、表のように、外部キー
名を保持しています - TestDB
|ID| |SportsID| |Test|
1 1 test1
2 3 test2
3 2 test3
4 1 test4
5 2 test5
今、私は、ユーザーが自分のWebアプリケーションにテーブルを検索できるようにPredicate Builder
を使用しています:
[HttpPost]
public ActionResult allDailySummaries(int? sport, int? sport1)
{
List<TestDB> lstTDB = db.TDB.Include(x => x.Sports).ToList();
var predicate = PredicateBuilder.True<TestDB>();
if (!string.IsNullOrWhiteSpace(sport.ToString()))
{
predicate = predicate.And(x => x.SportsID == sport);
}
if (!string.IsNullOrWhiteSpace(sport1.ToString()))
{
predicate = predicate.And(x => x.SportsID == sport).;
}
if (predicate.Parameters.Count > 0)
{
lstTDB = db.TestDB.AsExpandable().Where(predicate).ToList();
ViewBag.countSports = lstTDB.Count();
Session["Paging"] = lstTDB;
ViewBag.Paging = lstTDB.ToPagedList(page ?? 1, 25);
return View(lstTDB.ToPagedList(page ?? 1, 25));
}
else
{
return View(lstTDB.ToPagedList(page ?? 1,25));
}
私はフィルタリングしたり... 2つのスポーツで検索することができるはずですので、私は野球やバスケットボールのどちらかであるTestDB
内のすべてのレコードで検索したい場合は、その私が何をしたいのです..しかし、私はこれをしようとすると、それは何も返されませんが、私は1つのスポーツを検索するだけで動作します。
何か助けていただければ幸いです。