views:

2970

answers:

2

I have a MySql database with a certain feild that contains a date.

How can I convert it to a C# DateTime object?

And how do I convert a C# DateTime object so I can insert it to the database?

+3  A: 

You'll need the MySQL Connector for .NET, if you don't already have it, in order to get your C# application talking to MySQL.

Then you'll be able to get the date columns out of your database and into DateTime objects in the standard way, using MySqlConnection, MySqlCommand, MySqlDataReader etc.

There are a few potential gotchas when converting between MySQL dates/times and .NET DateTimes, but there's a useful section in the MySQL documentation with advice on how to handle the issues.

LukeH
That link to MySQL docs about the differences in DateTime implementation is extremely useful. Thanks! +1
Cerebrus
A: 

We use MySQL and C# at my shop for a number of applications. The solution that I used for anything to do with dates was to use BIGINT values within the DB and store all my DateTime objects there as UTC values. For my needs this solution worked really well and was straightforward. This avoided any problems between converting to/from different date formats. The DB side is oblivious to the fact that I'm storing dates and the C# clients could easily convert anything from the Int64 to the DateTime.

Anyhow, that was my solution and it worked for me.

Best of luck!

itsmatt