[英]ASP.NET Core web application - display database data C#
我正在嘗試顯示來自 SQL 服務器數據庫的數據。 我已經為此苦苦掙扎了一整天,仍然找不到任何可行的解決方案或教程。
我想做的——做一個簡單的“數據庫瀏覽器”。 到目前為止,最好的工作是本教程https://www.c-sharpcorner.com/article/entity-framework-database-first-in-asp-net-core2/
但是我只有一張表要顯示,我不知道如何編寫這部分代碼:
public IActionResult Index()
{
var _emplst = _dbContext.tblEmployees
.Join(_dbContext.tblSkills, e => e.SkillID, s => s.SkillID,
(e, s) => new EmployeeViewModel
{ EmployeeID = e.EmployeeID, EmployeeName = e.EmployeeName,
PhoneNumber = e.PhoneNumber, Skill = s.Title,
YearsExperience = e.YearsExperience }).ToList();
IList<EmployeeViewModel> emplst = _emplst;
return View(emplst);
}
僅一張表(沒有任何連接)。 我嘗試的一切都以我無法將tblEmployees
轉換為EmployeeViewModel
的錯誤告終。
有人可以幫助我嗎? 或者建議任何其他可能有效的解決方案? 我真的只想從表格中拖動數據並將其顯示在 web 頁面上。
編輯:ComponentContext.cs:
public class ComponentsContext:DbContext
{
public ComponentsContext(DbContextOptions<ComponentsContext> options) : base(options)
{
}
public DbSet<tblComponents> tblComponent { get; set; }
}
}
您的_emplst
列表的類型(類)與類型(類) EmployeeViewModel
不同。
因此,您需要 go 通過列出_emplst
並傳輸EmployeeViewModel
中所需的值。
這可能是這樣的:
public IActionResult Index()
{
var _emplst = _dbContext.tblEmployees.
Join(_dbContext.tblSkills, e => e.SkillID, s => s.SkillID,
(e, s) => new EmployeeViewModel
{ EmployeeID = e.EmployeeID, EmployeeName = e.EmployeeName,
PhoneNumber = e.PhoneNumber, Skill = s.Title,
YearsExperience = e.YearsExperience }).ToList();
var emplst = _emplst.Select( e=> new EmployeeViewModel {
.. i dont known the properties ..
A = e.A,
B = e.B,
... ..
}).ToList();
return View(emplst);
}
作為對以下tlbComponent
評論的回答,請嘗試以下操作:
var _cmplist = _dbContext.tblComponent.ToList().Select(e => new ComponentsViewModel { ID = e.ID, Name = e.Name, } ).ToList();
IList<ComponentsViewModel> cmplist = _cmplist;
return View(cmplist);
我已將_dbContext.tblComponent.Select(...
更改為_dbContext.tblComponent.ToList().Select(...
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.