mysql - 在 ASP.NET MVC 3 中使用 MySQL 数据库的 Linq,将 DateTime 存储到变量中

标签 mysql asp.net-mvc-3 linq-to-entities

我正在使用 MySQL 数据库在 ASP.NET MVC 3 中工作,我已经设置了所有要求并且连接工作正常。此下面的代码可以正常工作并产生正确的结果:

        try
        {
            ViewBag.Model = (from n in _db.mainDatas
                             where n.time_stamp == new DateTime(2010, 11, 3, 0, 0, 15) 
                             select n).Take(10).ToList();
        }catch (Exception e) {
            ViewBag.Error = e;
        }

但是当我将此代码更改为:

        DateTime test = new DateTime(2010,11,3,0,0,15);
        try
        {
            ViewBag.Model = (from n in _db.mainDatas
                             where n.time_stamp == test  
                             select n).Take(10).ToList();
        }catch (Exception e) {
            ViewBag.Error = e;
        }

生成此错误消息:

MySql.Data.MySqlClient.MySqlException: Fatal error encountered during command execution. ---> MySql.Data.MySqlClient.MySqlException: Unable to serialize date/time value

我正在使用 MySQL Connector/Net 6.3.6。这个问题有什么解决办法吗?

最佳答案

您一直在使用的 MySql 的 Linq to SQL 提供程序似乎有问题。 在第一种情况下,日期部分“位于”从您的 linq 查询生成的表达式树中,而在第二种情况下,DateTime 在 Linq 查询之外声明,因此生成的表达式树将与第一种情况不同。现在它取决于 Linq to SQL 提供程序中表达式树的解析器如何处理这两种情况,并且在这种情况下,提供程序似乎无法正确处理第二种情况的表达式树。

关于mysql - 在 ASP.NET MVC 3 中使用 MySQL 数据库的 Linq,将 DateTime 存储到变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6197096/

相关文章:

asp.net-mvc - 向 Sharp Architecture 注册自定义模型绑定(bind)器

asp.net-mvc - 在 asp.net-mvc 中,保存用户内容(图像、文件等)时是否有一个好的库或模式可以遵循

c# - 为什么当我在 LINQ to Entities 查询中使用 GroupBy() 时,结果中的导航属性为空?

python - 将 json 字符串插入表中

java - 插入希伯来语单词时的问号

c# - Microsoft JScript 运行时错误 : Unable to get value of the property 'removeChild' : object is null or undefined

c# - linq to entities vs linq to objects - 它们是一样的吗?

linq - linq中的noob,选择每条记录的第一个值相同的记录

mysql - 如何通过 openquery 和链接服务器在 VS 中使用 MySQL 数据为 SSRS 2008 报告创建数据集

javascript - 如何在函数中使用 javascript if 语句来填充表