如何使用 EF & ASP.NET MVC 获取即将发生的事件列表
Posted
技术标签:
【中文标题】如何使用 EF & ASP.NET MVC 获取即将发生的事件列表【英文标题】:How to get a list of upcoming Events using EF & ASP.NET MVC 【发布时间】:2020-06-07 01:07:09 【问题描述】:如何使用 Entity Framework 和 ASP.NET MVC 获取即将发生的事件的数据?
我想显示即将到来的新事件的列表,如果可能的话,我想隐藏已经过去的旧事件。下面是我用于日历的数据库表。
| EventID | Subject | Description | Start | End | ThemeColour | Course | IsFullDay
+---------+---------+-----------------+------------+-------------+-------------+--------
| 1 | Work | Teaching kids | 24/02/2020 | 24/02/22020 | Blue | English | False
| 2 | Work | Teaching kid | 15/01/2020 | 15/01/2020 | Blue | Maths | False
| 3 | Work | Teaching Kids | 19/06/2019 | 19/06/2019 | Green | Maths | False
【问题讨论】:
到目前为止你有什么尝试? 有大约 50 亿种方法可以做到这一点。您应该阅读如何创建具有数据库访问权限的 mvc 应用程序的教程。 目前还没有@Phong 【参考方案1】:使用 EF 学习 CRUD,然后将 linq 编写为
db.event_tab.Where(x=>x.start> DateTime.Now).ToList()
【讨论】:
【参考方案2】:您需要设置一个 DbContext 以便 EF 知道如何使用您的数据库。 https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application
当你有一个 DbContext 时,你可以编写这样的代码
EventDbContext database = new EventDbContext();
var query = database.Events.Where(evt => evt.Start.Date >= DateTime.Now.Date);
var upcomingEvents = query.ToList();
您的 DbContext 可能被称为其他名称。 EventDbContext 只是一个示例。此外,您的表格可能不会被称为“事件”,所以也要更改它。
【讨论】:
以上是关于如何使用 EF & ASP.NET MVC 获取即将发生的事件列表的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 MVC3 ASP.NET 4.5 和 EF6 基于实体属性注释对 TextBoxFor 进行舍入
如何使用 EF 在 asp.net MVC 中进行多种方法的一项事务
如何在 Asp.Net 5 (MVC 6) 中使用实体框架 6.x