将 MySQL DATETIME 转换为 System.DateTime

发布于 2024-08-08 09:15:08 字数 194 浏览 5 评论 0原文

我正在使用带有 DbLinq 的 MySQL 数据库,但抛出异常:

“无法将 mysql 日期时间转换为 系统.日期时间"

如何解决此问题?

I am using a MySQL database with DbLinq, but there is an exception being thrown:

"Cannot convert mysql datetime to
system.datetime"

How can I resolve this issue?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

各自安好 2024-08-15 09:15:08

检查数据库中是否有任何零日期,即'0000-00-00'之类的日期;
这可能是错误的原因。

Check for any zero date means date like '0000-00-00' in database;
this could be the cause of error.

兲鉂ぱ嘚淚 2024-08-15 09:15:08

那么,如果您有一个包含 MySql DateTime 值的结果集,则可以使用 ConvertAll 方法以及使用 DateTime.Parse 创建 System.DateTime 值。

下面是一个示例,其中“结果”是包含 MySQL 日期时间值的 dblinq 查询的结果:

List<DateTime> dateTimes = results.ConvertAll(delegate(string time){ 
   return DateTime.Parse(time); 
});

这是您要查找的吗?

Well, if you have a result set containing MySql DateTime values, you could use the ConvertAll method along with a delegate using DateTime.Parse to create a collection of System.DateTime values.

Here's an example, where "results" is the result of your dblinq query containing MySQL datetime values:

List<DateTime> dateTimes = results.ConvertAll(delegate(string time){ 
   return DateTime.Parse(time); 
});

Is this what you're looking for?

随心而道 2024-08-15 09:15:08

我将 gridview 中的一列从 asp:BoundField 移动到 asp:TemplateField,因此必须显式显示 MySQL 数据库中的日期。通过反思,我发现该集合将日期字段键入为 MySqlDateTime 而不是 system.DateTime。

我将 import MySql.Data.Types 语句添加到后面的代码中,并在 gridview 上下文中的标签中添加了以下 Eval 语句。

Text='<%# CType(Eval("Subscribed_Date"), MySql.Data.Types.MySqlDateTime).ToString%>'

输出格式:02/23/2011

希望有帮助!

I was moving a column in my gridview from asp:BoundField to asp:TemplateField so had to display a date from a MySQL database explicitly. I found, through reflection, that the collection typed the date fields as MySqlDateTime and not system.DateTime.

I added the import MySql.Data.Types statement to the code behind and the following Eval statement within a label in the context of a gridview.

Text='<%# CType(Eval("Submitted_Date"), MySql.Data.Types.MySqlDateTime).ToString%>'

output format: 02/23/2011

Hope that helps!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文