如何在必须大于.Net Core 中已存在的学期的期间内创建学期?
How to create a Semester in a period that must be greater than the Semester that already exists in .Net Core?
我有一个 Semester1
,包括 StartDate1
和 EndDate1
。我想创建一个新的 Semester2
,它必须确保 EndDate1
< StartDate2
。我如何比较它们?
我正在使用 .Net Core 5 和存储库模式
如果您有任何指导,请告诉我。如果您需要有关准则的更多信息,请告诉我。
Repo下面的对比是我一个学期内做的
public SemesterViewModel CreateSemester(Semester semester)
{
if (Semester.SemesterStartDate <Semester.SemesterClosureDate &&
Semester.SemesterClosureDate < Semester.SemesterEndDate)
{
var newSemester = new Semester
{
SemesterName = Semester.SemesterName,
SemesterStartDate = Semester.SemesterStartDate,
SemesterClosureDate = Semester.SemesterClosureDate,
SemesterEndDate = Semester.SemesterEndDate
};
_dbContext.Semesters.Add(newSemester);
_dbContext.SaveChanges();
return null;
}
因此,在查看您的回购协议之后。我正在更新我的答案。我可以看到您正在尝试比较第 1 学期和第 2 学期之间的日期。但在这里您只是比较第 2 学期的日期,这是行不通的。
你应该先从 db 中获取 semester1,然后比较日期。
var semester1 = GetSemester(); //get semester 1;
因此,如果您想与上学期进行比较:
var semester1 = Get().OrderByDescending(a => a.Id).FirstOrDefault();
然后:
if (semester1 == null || (semesterViewModel.Semester.SemesterStartDate > semester1.SemesterEndDate))
{
//save newSemester
}
我有一个 Semester1
,包括 StartDate1
和 EndDate1
。我想创建一个新的 Semester2
,它必须确保 EndDate1
< StartDate2
。我如何比较它们?
我正在使用 .Net Core 5 和存储库模式
如果您有任何指导,请告诉我。如果您需要有关准则的更多信息,请告诉我。
Repo下面的对比是我一个学期内做的
public SemesterViewModel CreateSemester(Semester semester)
{
if (Semester.SemesterStartDate <Semester.SemesterClosureDate &&
Semester.SemesterClosureDate < Semester.SemesterEndDate)
{
var newSemester = new Semester
{
SemesterName = Semester.SemesterName,
SemesterStartDate = Semester.SemesterStartDate,
SemesterClosureDate = Semester.SemesterClosureDate,
SemesterEndDate = Semester.SemesterEndDate
};
_dbContext.Semesters.Add(newSemester);
_dbContext.SaveChanges();
return null;
}
因此,在查看您的回购协议之后。我正在更新我的答案。我可以看到您正在尝试比较第 1 学期和第 2 学期之间的日期。但在这里您只是比较第 2 学期的日期,这是行不通的。
你应该先从 db 中获取 semester1,然后比较日期。
var semester1 = GetSemester(); //get semester 1;
因此,如果您想与上学期进行比较:
var semester1 = Get().OrderByDescending(a => a.Id).FirstOrDefault();
然后:
if (semester1 == null || (semesterViewModel.Semester.SemesterStartDate > semester1.SemesterEndDate))
{
//save newSemester
}