J'utilise une base de données MySQL avec DbLinq, mais il y a une exception levée:Conversion MySQL DATETIME à System.DateTime
"Impossible de convertir datetime MySQL pour System.DateTime"
Comment puis-je résoudre ce problème?
J'utilise une base de données MySQL avec DbLinq, mais il y a une exception levée:Conversion MySQL DATETIME à System.DateTime
"Impossible de convertir datetime MySQL pour System.DateTime"
Comment puis-je résoudre ce problème?
Eh bien, si vous avez un jeu de résultats contenant MySql DateTime
valeurs, vous pouvez utiliser la méthode ConvertAll
avec un délégué en utilisant DateTime.Parse
pour créer une collection de System.DateTime
valeurs.
Voici un exemple où les « résultats » est le résultat de votre requête dblinq contenant des valeurs datetime MySQL:
List<DateTime> dateTimes = results.ConvertAll(delegate(string time){
return DateTime.Parse(time);
});
Est-ce que vous cherchez?
je bougeais une colonne dans mon gridview de asp: BoundField à asp: TemplateField Nous avons donc dû afficher une date explicitement à partir d'une base de données MySQL. J'ai trouvé, par la réflexion, que la collection a tapé les champs de date comme MySqlDateTime et pas system.DateTime.
J'ai ajouté l'instruction d'importation MySql.Data.Types au code derrière et l'instruction Eval suivante dans une étiquette dans le contexte d'un gridview.
Text = '<% # CType (Eval ("Submitted_Date"), MySql.Data.Types.MySqlDateTime) .toString%>'
format de sortie: 02/23/2011
espoir que aide!
Vérifier qu'une date nulle signifie une date comme '0000-00-00' dans la base de données; cela pourrait être la cause de l'erreur.
Comment faites-vous le casting/la conversion maintenant? – Ariel
La date MySql est-elle un horodatage unix? –