C# 使用Linq从数据库中获取详细信息,以便人们可以';不要创建新实体
只是学习C#,我正在家里开发一个程序 我的应用程序中有一个约会实体。我想要它,这样有人可以把他们的详细资料与选择的房间,日期和管理员(FK)在他们的处置 当他们点击按钮创建时,我希望Linq查询执行搜索,以查看是否所有条件都可用,即可以进行预约。 我现在只是在挣扎 以下是我所拥有的:C# 使用Linq从数据库中获取详细信息,以便人们可以';不要创建新实体,c#,asp.net-mvc,entity-framework,linq,C#,Asp.net Mvc,Entity Framework,Linq,只是学习C#,我正在家里开发一个程序 我的应用程序中有一个约会实体。我想要它,这样有人可以把他们的详细资料与选择的房间,日期和管理员(FK)在他们的处置 当他们点击按钮创建时,我希望Linq查询执行搜索,以查看是否所有条件都可用,即可以进行预约。 我现在只是在挣扎 以下是我所拥有的: var currentBooking = db.Appointments .Where(b => b.AppointmentId == appointments.AppointmentId)
var currentBooking = db.Appointments
.Where(b => b.AppointmentId == appointments.AppointmentId)
.Select(b => (appointments.RoomType == b.RoomType && appointments.DateOfAppointment == b.DateOfAppointment && appointments.AdministrationId == b.AdministrationId))
.FirstOrDefault();
if (currentBooking)
{
throw new Exception("The Room is already out on that date.");
}
else
{
db.Appointments.Add(appointments);
db.SaveChanges();
return RedirectToAction("Index");
}
如果根据你所说的,这是一个新的约会,那么它不应该有一个id设置。接下来,您可以使用
Any
进行简单查询,以验证过滤器是否存在
var currentBooking = db.Appointments
.Any(b => appointments.RoomType == b.RoomType
&& appointments.DateOfAppointment == b.DateOfAppointment
&& appointments.AdministrationId == b.AdministrationId);
if (currentBooking) {
throw new Exception("The Room is already out on that date.");
} else {
db.Appointments.Add(appointments);
db.SaveChanges();
return RedirectToAction("Index");
}
如果根据你所说的,这是一个新的约会,那么它不应该有一个id设置。接下来,您可以使用
Any
进行简单查询,以验证过滤器是否存在。我们使用它进行此类检查(唯一性等)。