想象一下,我有2个数据库表... 1个表包含不同的运动:
|ID| |Sport|
1 Baseball
2 Basketball
3 Soccer
第二个表格包含Sports表格的ID
,因此是外键
表格名称 - TestDB
|ID| |SportsID| |Test|
1 1 test1
2 3 test2
3 2 test3
4 1 test4
5 2 test5
现在我使用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项运动它会起作用。
感谢任何帮助。
答案 0 :(得分:0)
我有解决方案:
<tr ng-repeat="targeting in vm.TargetingsAudience | orderBy:orderByName track by $index ">
<p ng-repeat="val in targeting.Values | orderBy:orderByName track by $index " class="targeting-value">{{val}}</p>