"Eine Datenquelle gebunden werden müssen, bevor diese operation durchgeführt werden kann"
Ich versuche, display ein raster, in das MVC-3,
Ich bekam die folgende Fehlermeldung:
Eine Datenquelle gebunden werden müssen, bevor diese operation durchgeführt werden kann.
dies ist mein Modell:
public class EmpModel
{
public string UserName { get; set; }
public string Password { get; set; }
public int EmpID { get; set; }
public string EName { get; set; }
public int Age { get; set; }
public string Gender { get; set; }
public string Qualification { get; set; }
public string Address { get; set; }
public string EmailID { get; set; }
public int DeptID { get; set; }
public string DeptName { get; set; }
public string DeptHead { get; set; }
public int Deptnumber { get; set; }
}
Dies ist Controller:
TestMVCEntities testEmp = new TestMVCEntities();
EmpModel empmod = new EmpModel();
public ActionResult Index()
{
List<EmpModel> emp = new List<EmpModel>();
return View();
}
Das ist meine Ansicht:
@model IEnumerable<EmpApplication.Models.EmpModel>
@{
ViewBag.Title = "Index";
WebGrid grid = new WebGrid();
}
<h2>List of Employee</h2>
@grid.GetHtml(columns: new [] {
grid.Column("EmpID"),
grid.Column("EName"),
grid.Column("EmailID"),
grid.Column("Qualification")
})
- wo genau bekommst du den Fehler?
- Ich erhalte die folgende Fehlermeldung: Eine Datenquelle gebunden werden müssen, bevor diese operation durchgeführt werden kann.
- nicht u müssen, senden Sie das Modell an den view zu.
return View(emp);
und binden Sie die Daten an das grid? - Ich Tat, aber ich bin immer der gleiche Fehler
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie übergeben als parameter den
source
Ihrer Daten. Das WebGrid erwartet eineIEnumerable<Object>
oderIEnumerable<dynamic>
alssource
.Müssen Sie ihn wieder in die Liste auf Ihrer view:
Dann übergeben es an WebGrid-Konstruktor:
testEmp
, wenn es Ihrdbcontext
alle Ihre MitarbeiterIch bin sicher, dass es funktioniert..
Ändern Sie einfach Ihre retrun Liste als
enumerable
.