我有这个问题:
Course c = db.Courses.Find(id);
var pics = from pic in db.PersonnelInCourses
where pic.PersonnelID == User.Identity.Name &&
pic.Course.TitleID == c.TitleID &&
pic.Course.BeginDate.Substring(0, 4) == PersianDateTime.Now.Year.ToString()
select pic;
我发现L2E不支持.Substring()
方法。那么,我怎样才能得到我想要的东西?!
坦
答案 0 :(得分:2)
发现它!
string year = PersianDateTime.Now.Year.ToString();
Course c = db.Courses.Find(id);
var pics = from pic in db.PersonnelInCourses
where pic.PersonnelID == User.Identity.Name &&
pic.Course.TitleID == c.TitleID &&
pic.Course.BeginDate.Contains(year)
select pic;
谢谢大家的帮助......
答案 1 :(得分:1)
试试吧
Course c = db.Courses.Find(id);
var pics = from pic in db.PersonnelInCourses
where pic.PersonnelID == User.Identity.Name &&
pic.Course.TitleID == c.TitleID &&
pic.Course.BeginDate.Substring(0, 4).Equals(PersianDateTime.Now.Year.ToString())
select pic;
我不知道BeginDate的类型是什么?我是DateTime,然后调用ToString()。
答案 2 :(得分:0)
'Contains'的危险在于它搜索整个字符串。根据日期的格式,这可能会产生问题。例如:如果您的日期格式为“yyyyMMdd”,则您不太可能遇到问题(除非您计划在1232年之前插入日期)。如果它是“yyyyMMddHHmmss”,则期望随机且难以发现错误。