我對實體框架和MVC相當陌生。我可以在現有的SQL服務器數據庫上使用實體數據模型嚮導(EDMW),並自動創建必要的類(上下文,模型等)。然後將模型(db.Employees.tolist())從控制器傳遞到視圖。一切正常,我可以從company.employees表中看到瀏覽器上所有員工的列表。但是,我想在EDMW或其他工具的幫助下自己編寫代碼,以更好地理解實體/ MVC /數據庫交互。所以我寫了下面的代碼,但似乎無法讓瀏覽器顯示錶格。我知道我錯過了一些東西。先用現有數據庫代碼
SQL SERVER: Schema.tablename(Acme.Employees)
public class AcmeContext : DbContext
{
public virtual DbSet<Employee> Employees { get; set; }
}
public class Employee
{
public int customerid {get; set;}
public string name {get;set;}
public string state {get;set;}
}
public ActionResult list()
{
var db = new AcmeContext();
return view(db.Employees.tolist());
}
<connectionStrings>
<add
name="AcmeContext"
connectionString="data source=localhost;initial catalog=Acme;integrated security=True;"
providerName="System.Data.SqlClient" />
</connectionStrings>
需要什麼呢?
另外,當數據庫已經存在時,這在現實世界中如何完成?開發人員是使用EDM嚮導還是手動編寫嚮導在Visual Studio或其他IDE中執行的所有操作?
有幾件事。你沒有添加員工,你的數據庫將是空的。你應該在你的POCO上聲明一個'[Key]'。你遇到了什麼錯誤? – Jonesopolis 2014-09-05 02:46:44
@Jonesy我會在哪裏添加員工?我在customerid上面有[Key]屬性,但上面的代碼片段沒有顯示它。我其實沒有看到任何錯誤。瀏覽器無視任何視圖。 – bnsffan 2014-09-05 03:22:39