Veröffentlicht 15. November 201410 j Hi, ich arbeite grad zum ersten Mal mit Hibernate bzw. OR-Datenbanken und habe mir diese Anleitung kopiert, bekomme aber keine Ergebnisse angezeigt. Es fliegt auch keine Exception. Ich habe auch schon versucht, die Ergebnisliste generisch zu machen, was aber auch nichts bringt. Meine Funktion MySQLQuery liefert mir aber den gesuchten Datensatz, wo liegt also der Fehler? namespace NHibernate { class Program { private static void MySQLQuery() { string connString = "Server=localhost;Database=Nhibernate_test;uid=root"; MySqlConnection connection = new MySqlConnection(connString); connection.Open(); string command = "SELECT * FROM helloworld"; try { MySqlDataReader reader = new MySqlCommand(command, connection).ExecuteReader(); while (reader.Read()) { Console.WriteLine(reader.GetString("Message")); } } catch (Exception e) { } finally { connection.Close(); } } private static void NHibernateQuery() { Configuration config; config = new Configuration(); config.SetProperty(NHibernate.Cfg.Environment.ConnectionProvider, "NHibernate.Connection.DriverConnectionProvider"); config.SetProperty(NHibernate.Cfg.Environment.Dialect, "NHibernate.Dialect.MySQLDialect"); config.SetProperty(NHibernate.Cfg.Environment.ConnectionDriver, "NHibernate.Driver.MySqlDataDriver"); config.SetProperty(NHibernate.Cfg.Environment.ConnectionString, "Server=localhost;Database=nhibernate_test;uid=root"); config.AddAssembly("NHibernate"); ISessionFactory factory; factory = config.BuildSessionFactory(); Console.WriteLine("Configured"); ISession session = null; IList<TheData.MessageProvider> messages = null; try { session = factory.OpenSession(); //messages = session.CreateCriteria(typeof(TheData.MessageProvider)).List(); messages = session.CreateCriteria<TheData.MessageProvider>().List<TheData.MessageProvider>(); Console.WriteLine("NofMessages:{0}\n", messages.Count); foreach (TheData.MessageProvider aMessage in messages) { Console.WriteLine("Id:{0} - Message:{1}", aMessage.Id, aMessage.Message); } } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { session.Close(); } Console.Read(); } static void Main(string[] args) { MySQLQuery(); NHibernateQuery(); } } } namespace TheData { public class MessageProvider { public MessageProvider() { } public int Id { get; set; } public string Message { get; set; } } } <?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" default-access="property"> <class name="TheData.MessageProvider, NHibernate" table="helloworld"> <id name="Id" column="Id"> <generator class="identity" /> </id> <property name="Message" column="Message"/> </class> </hibernate-mapping> Bearbeitet 15. November 201410 j von Saheeda
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.