ASP.NET核心web应用程序-显示数据库数据C#
我正在尝试显示SQL Server数据库中的数据。我已经和它斗争了一整天,但仍然找不到任何有效的解决方案或教程 我想做的是制作一个简单的“数据库浏览器”。到目前为止,效果最好的是本教程 但我只有一个表要显示,我不知道如何编写这部分代码:ASP.NET核心web应用程序-显示数据库数据C#,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,我正在尝试显示SQL Server数据库中的数据。我已经和它斗争了一整天,但仍然找不到任何有效的解决方案或教程 我想做的是制作一个简单的“数据库浏览器”。到目前为止,效果最好的是本教程 但我只有一个表要显示,我不知道如何编写这部分代码: public IActionResult Index() { var _emplst = _dbContext.tblEmployees .Join(_dbContext.tblSk
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);
}
您的
\u EmployeeViewModel
列表的类型(类)与类型(类)EmployeeViewModel
不同
因此,您需要查看您的列表\u employst
,并在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);
}
请尝试以下方法回答您对TLB组件的评论:
var _cmplist = _dbContext.tblComponent.ToList().Select(e => new ComponentsViewModel { ID = e.ID, Name = e.Name, } ).ToList();
IList<ComponentsViewModel> cmplist = _cmplist;
return View(cmplist);
var\u cmplist=\u dbContext.tblComponent.ToList().Select(e=>newcomponentsviewmodel{ID=e.ID,Name=e.Name,}).ToList();
IList cmplist=_cmplist;
返回视图(cmplist);
我已将\u dbContext.tblComponent.Select(…
更改为\u dbContext.tblComponent.ToList()。Select(…
)我尝试了以下操作:varnewcomponentsviewmodel{ID=e.ID,Name=e.Name,}).ToList();IList cmplist=_cmplist;返回视图(cmplist);但它以“无效对象名(tblComponent)”结尾,表示您没有DbSet tblComponent{get;set;}
关于\u dbContext
的类型。在您的问题中显示\u dbContext
的类型,然后我们可以帮助您。公共类组件上下文:dbContext{public components上下文(DbContextOptions):base(options){}public DbSet tblComponent{get;set;}}感谢您的回复:)使用ComponentsContext
类更新您的问题,它更具可读性;)对于这样一个“通用”数据库浏览器,实体框架可能不是最佳选择。也许你需要回到“老派”的低级ADO.NET来处理这样的场景。。。
var _cmplist = _dbContext.tblComponent.ToList().Select(e => new ComponentsViewModel { ID = e.ID, Name = e.Name, } ).ToList();
IList<ComponentsViewModel> cmplist = _cmplist;
return View(cmplist);