[英]c# filter database results using EF similar to SQL WHERE Clause
我已經使用實體框架連接到數據庫,並且正在構建我的第一個MVC應用程序以用於網頁。
我可以讓控制器毫無問題地填充模型中的公共字符串……我遇到的問題是我無法弄清楚如何從數據庫中過濾響應。
我希望只返回一個項目,該項目將顯示在帶有@Model.BusinessUnit
的視圖中
這是數據庫表的模型類:
public partial class TBL_Wholesale_UWS_BusinessUnits
{
public int PrimaryID { get; set; }
public string BusinessUnit { get; set; }
public string Status { get; set; }
}
這是我的控制器中的內容:
public ActionResult test(int PrimaryID)
{
var testing = new TBL_Wholesale_UWS_BusinessUnits();
// maybe putting new is the wrong thing to do as that would be wiping the class? IDK
return View(testing);
}
如您所見,PrimaryID通過querystring傳遞到控制器,並且可以毫無問題地被識別,但是我對添加過濾器的位置感到困惑,我認為這就像...
var testing = TBL_Wholesale_UWS_BusinessUnits.Where(TBL_Wholesale_UWS_BusinessUnits.PrimaryID = PrimaryID);`
但是Visual Studio毫無疑問地告訴我這是錯誤的。
如果這是經典的asp,我將創建一個記錄集並使用SQL中的where子句,但是由於它是使用Entity Framework構建的,所以我真的不知道從哪里開始。
任何幫助將不勝感激。
如果你只想要一個特定對象返回視圖..然后你需要找到一個int PrimaryID
數據庫和檢索特定的記錄。
您正在做的只是簡單地創建一個TBL_Wholesale_UWS_BusinessUnits
類的新實例,該實例為空 。
嘗試這個:
public ActionResult test(int PrimaryID)
{
var testing = db.TableName.Find(PrimaryID);
// db = Whatever the variable holding your connection string is.. maybe DbContext
// TableName = Whatever table in your database that holds the record you want
// This will return the specific object that you are looking for
return View(testing);
}
我希望這有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.