C# 实体框架方法
在这方面我需要一些帮助,如何编写where子句语句,以便根据2列检索记录: 这就是我试图用代码编写的方式:C# 实体框架方法,c#,linq,entity,C#,Linq,Entity,在这方面我需要一些帮助,如何编写where子句语句,以便根据2列检索记录: 这就是我试图用代码编写的方式: public IList<Model.question> GetAll(string search , int search1) { IList<Model.question> lstQuestions = context.questions.ToList(); return lstQuestions.Where(a => a.TaskName
public IList<Model.question> GetAll(string search , int search1)
{
IList<Model.question> lstQuestions = context.questions.ToList();
return lstQuestions.Where(a => a.TaskName.Contains(search) && p => p.ActivityID.Contains(search1)).ToList();
}
我得到了一个错误,其中q不存在是当前上下文,我在这里尝试的是获取列(questionNo)的最大值,其中taskname=list task,activityid=list activity 您好,谢谢您的快速回复,但我的ActivityID在db中是INT,我尝试使用INT search1,但它给了我一个错误实例参数:无法从'INT'转换为'System.Linq.ParallelQuery',并且'INT'不包含'Contains'的定义和最佳扩展方法重载'System.Linq.ParallelEnumerable.Contains'(System.Linq.ParallelQuery,TSource)“有一些是无效的arguments@user2376998:如果
ActivityID
是INT
,那么为什么search1
变量是string
?它也应该是INT
?对吗?是的,很抱歉,忘记更改了it@user2376998:我已更新我的答案。包含的
被替换为=
。请立即检查。您好,谢谢你的回答,但我还有另一个问题要问你,duno,如果合适的话,对不起,如果是…stackoverflow的新问题…问题更新了上面…希望你能看一下谢谢
public IList<Model.question> GetAll(string search , int search1)
{
IList<Model.question> lstQuestions = context.questions.ToList();
return lstQuestions.Where(a => a.TaskName.Contains(search) && a.ActivityID==search1)).ToList();
}
public IList<Model.question> GetAll(string search , int search1)
{
IList<Model.question> lstQuestions = context.questions.ToList();
return lstQuestions.Where(a => a.TaskName.Contains(search) && a.ActivityID==search1)).ToList();
}
public int GetMaxValue(string listTask , int listActivity)
{
int maxQNo = Convert.ToInt32(context.questions.Max(q => q.QuestionNo)
.Where(q=>q.TaskName.Contains(listTask) &&
q.ActivityID.Contains(listActivity));
return maxQNo+1;
}