NHibernate - ne pouvait pas trouver (oracle) dans le dialecte de configuration
J'ai suivantes hibernate.cfg.xml
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2" >
<session-factory>
<property name="connection.driver_class">NHibernate.Driver.OracleClientDriver</property>
<property name="connection.connection_string">
User ID=user;Password=password;Data Source=database
</property>
<property name="show_sql">false</property>
<property name="dialect">NHibernate.Dialect.Oracle9Dialect</property>
<property name="query.substitutions">true 1, false 0, yes 'Y', no 'N'</property>
<property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property>
</session-factory>
Maintenant je reçois l'erreur suivante:
a échoué: NHibernate.MappingException :
Pourrait ne pas dresser la cartographie
document:
Mob.Icecube.Data.NH.Mappings.Customer.hbm.xml
----> Système.InvalidOperationException : impossible de trouver le dialecte dans l'
configuration
Quelqu'un peut m'aider à savoir pourquoi il ne peut pas trouver le pilote?
Quelques informations supplémentaires... C'est en cours d'exécution au moment uniquement à l'intérieur d'un UnitTest application
J'ai ajouté le NHibernate et du Système.Les données.OracleClient aux références du projet
Utilisant les dernières NHibernate version (2.2 beta)
Merci d'avance
OriginalL'auteur | 2009-07-02
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas de NHibernate.Le dialecte.Oracle9Dialect dialecte dans l'NHibernate assemblée.
Il y a un NHibernate.Le dialecte.Oracle9iDialect.
Vérifier que votre NHibernate fichier de configuration est chargé correctement. Utilisez quelque chose comme:
C'est en supposant que votre NHibernate fichier de configuration est appelé hibernate.cfg.xml et est à la racine de votre application.
Pouvez-vous poster le code où vous créez la configuration et la fabrique de session?
OriginalL'auteur Nigel
Je me suis inscrit maintenant sur le site, et il semble que pour le moment je ne suis plus autorisé à laisser des commentaires, donc je vais juste poster le code à nouveau dans une nouvelle réponse 😀
Pour créer la configuration et l'usine:
Configuration config = new Configuration();
config.AddAssembly("MyLib.Les données.NH");
ISessionFactory usine = config.BuildSessionFactory();
J'ai aussi changé la config maintenant à utiliser (ce qui devrait être disponible) Oracle10gDialect (si j'ai essayé 9i ainsi, sans succès).
Yep, c'est ça. J'ai oublié d'ajouter config.Configurer() avant d'y ajouter de l'assemblée. Ne peux pas croire que j'ai perdu une journée entière sur ce (lol). Merci beaucoup Nigel. Malheureusement, ma réputation est trop faible pour upvote votre réponse.
C'est ok, content d'être de l'aide. Revenir et cochez ma réponse quand vous obtenez une certaine réputation ;).
En attendant, je vous ai donné un + 1.
OriginalL'auteur Ronald
Avez-vous le client Oracle installé localement sur votre pc? Je crois que cette offre certains des pilotes que vous pouvez avoir besoin pour vous connecter, mais je ne suis pas sûr. Si oui, essayez de copier le Oracle.DataAccess.dll fichier à partir de votre installation dans le dossier bin de votre projet. Ce qui a fonctionné pour moi dans le passé.
OriginalL'auteur Mark Struzinski