使用具有自定义类型属性的实体时,该类型无法转换为 SQL。
我创建了一个例子来解释我解决它的方法:
在某个学期开设一门课。学期作为DateTime值存储在数据库中。
学期本身是一个自定义类型,具有附加属性。
public class Semester
{
public enum HalfYear
{
First = 1,
Second = 7
}
DateTime _dateTime;
public Semester (HalfYear halfYear, int year)
{
_dateTime = new DateTime(year, (int) halfYear, 1)
}
public int Year => _dateTime.Year;
public HalfYear HalfYear => (HalfYear) _dateTime.Month;
public DateTime FirstDay => new DateTime(Year, _dateTime.Month, 1);
public DateTime LastDay => new DateTime(Year, _dateTime.Month + 5, DateTime.DaysInMonth(Year, _dateTime.Month + 5));
}
public class Class
{
int Id { get; …Run Code Online (Sandbox Code Playgroud)