簡體   English   中英

c#使用類似於SQL WHERE子句的EF過濾數據庫結果

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM