【发布时间】:2011-12-19 01:19:47
【问题描述】:
对于我的生活,我无法弄清楚这个错误 - 我在 mysql 中有两个时间字段,正确映射为 ASP.net 实体框架中的时间戳字段。我可以毫无问题地分配和插入数据库,但是,每当我尝试通过简单地查询数据库来加载数据时,我都会收到以下错误消息:Invalid cast from 'System.String' to ' System.TimeSpan'
using (hydraEntities db = new hydraEntities())
{
Employer = db.employers.Include("address").Where(em => em.EmployerId == EmployerId).First();
}
我想不通,我已将 mysql 连接器升级到最新版本,祈祷能解决这个错误 - 但是并没有解决它。任何帮助将不胜感激!
【问题讨论】:
-
您确定要时间跨度吗?通常你会使用 dateTime。
-
是的 - 时间跨度是首选,因为我只存储一天中的时间而没有特定日期,时间可能出现在多个日期,例如,对于特定职位,员工将工作 8到 5 ,周一到周五,所以我只存储开始时间和结束时间
-
TimeSpan 类不存储一天中的时间。它表示两个日期之间的比较。 DateTime 可能是您所追求的。
-
在 mysql 中将其存储为时间 - 但是 asp.net 实体框架用时间跨度表示它
-
我已经切换到日期时间 - 虽然它不是理想的情况,但它确实有效,所以感谢 cmets 伙计们
标签: c# asp.net mysql entity-framework entity-framework-4.1