下面的代码将选择表中的所有行,但我只想选择传递给方法的行的id。我已经尝试了多种方式,现在开始新鲜,看看我是否能让它发挥作用。任何帮助表示赞赏。
这是我的代码:
[WebMethod]
public static string getProjectByID(int id)
{
using (dbPSREntities4 myEntities = new dbPSREntities4())
{
var thisProject = myEntities.tbProjects.ToList();
JavaScriptSerializer serializer = new JavaScriptSerializer();
var json = serializer.Serialize(thisProject);
return json;
}
}
答案 0 :(得分:5)
您需要使用Where
方法过滤数据:
var thisProject = myEntities.tbProjects.Where(x => x.yourIdColumn == id).ToList();
答案 1 :(得分:3)
where子句在这里相当简单。您只需要使用lambda表达式来指定您匹配的条件。如果你不熟悉它们,可以在这里找到更多的信息http://msdn.microsoft.com/en-us/library/bb397687.aspx基础知识你有一个变量名称,后面是=>
你可以用变量和我做你想做的事情发现最容易将其视为foreach
,其中您声明的变量名称是迭代变量(列表中的项目)。
var thisProject = myEntities.tbProjects.Where(x => x.Id == id).ToList();