bonjour j'ai une application qui utilise nhibernate comme orm, j'ai besoin de stocker des données qui représente le temps, quelle est la meilleure façon de le faire? Nhibenate ne sait pas convertir le champ de temps de db à une échelle de temps, seule chaîne. NHibernate prend en charge DateTime, Ticks, TimeSpan and TimestampTime and Nhibernate
Répondre
Assurez-vous de spécifier explicitement le type sur votre élément de mappage car les différents types de temps ont des sémantiques différentes, ce que NHibernate devine peut ne pas être correct.
Si vous rencontrez et avez toujours des problèmes, modifiez votre publication pour inclure les parties pertinentes de votre entité, le fichier de mappage et le problème réel que vous rencontrez.
Edit:
Par exemple, avec la classe suivante pour une TimeSpan
:
public class MyClass
{
// Other properties
// ...
// ...
public virtual TimeSpan MyTimeProperty { get; set; }
}
Et le fichier de mapping:
<!-- other properties -->
<property name="MyTimeProperty" type="TimeSpan" /> <!-- Note: NH expects the DB type to be DbType.Int64 -->
Vous indiquez que vous essayez de map un TimeSpan ("nhibenate ne sais pas pour convertir le champ de temps de db à un timespan, seule chaîne"). Si c'est le bon type correspondant entre .NET (typeof
TimeSpan
) et la base de données (DbType.Int64
), NH devrait le faire automatiquement (c'est-à-dire que vous ne devriez pas avoir besoin de spécifier type="TimeSpan"
). Donc, si ça ne fonctionne pas, je suppose qu'il y a un problème avec la façon dont vous avez configuré les choses. Il peut être utile si vous postez la déclaration de propriété/champ avec la signature complète, la ligne <property>
pour cette propriété à partir de votre fichier de mappage et la définition de colonne de la base de données.
De même, assurez-vous d'utiliser des valeurs Null pour vos DateTimes qui peuvent être NULL dans la base de données.
DateHeure? au lieu de simplement DateTime. Si ce n'est pas le cas, NHibernate tentera d'initialiser votre date à une valeur par défaut qui n'est probablement pas celle que vous voulez.
- 1. Nhibernate Get and Load
- 2. Comment convertir Oracle "TIME" à JDBC Time dans la requête?
- 3. CustomValidator time C# .net
- 4. Deploy time Webservice location
- 5. MSBuild MSBuildCommunityTasks Task Time
- 6. T-SQL Time Averaging
- 7. Time Slot SQL Query
- 8. .NET Greenwich Mean Time
- 9. Google Crawler Time Restriction
- 10. Profilage ClickOnce * startup * time
- 11. ASP.NET UpdatePanel Time Out
- 12. Nant set time set
- 13. Comment implémentez-vous le modèle Pipes and Filters avec LinqToSQL/Entity Framework/NHibernate?
- 14. stage.addChild and layering
- 15. ClickOnce and Security
- 16. jQuery and Rails
- 17. Requête avancée (?) AND/OR
- 18. Entity Framework and Sorting
- 19. Entity Framework and Encapsulation
- 20. QList and shared_ptr
- 21. Array and foreach
- 22. ApplyPropertyChanges and References
- 23. Cast and Convert
- 24. asp.net threading and gui
- 25. SubSonic "Or" et "AND"
- 26. Loops and Garbage Collection
- 27. Paramètre Casting and Out
- 28. Fonction Time Travel dans postgresql
- 29. Programmation d'événements iPhone One Time
- 30. Time Stamping Email avec PHP
Dois-je spécifier le type dans un nhibernate fluide? –