2012-05-06 2 views
-2

난 복합 기본 키에 문제가 있습니다 내가 테이블이 "simulateur"라는 한 복합 기본 키입니다 Nombre_simulateur 및 날짜 클래스 simulateur.hbm.xml을 :NHibernate에 복합 기본 키

<?xml version="1.0" encoding="utf-8" ?> 
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" auto-import="true"> 
    <class name="base_donnee.simulateur, base_donnee" table="simulateur"> 
<composite-id > 
<key-property name="Nombre_simulateur"> 
     <column name="[Nombre_simulateur]" sql-type="int" /> 
     </key-property> 
     <key-property name="Date"> 
     <column name="[Date]" sql-type="nvarchar(50)" /> 
     </key-property> 
    </composite-id> 
    <property name="temps_connection" type="int" /> 
    <property name="temps_envoi" type="int" /> 
    <property name="temps_reception" type="int" /> 
    </class> 
</hibernate-mapping> 

하지만 예외가 나타납니다 : 매핑 문서를 컴파일 할 수 없습니다 : base_donnee.simulateur.hbm.xml는 ---> System.InvalidOperationException이 : 구성

내 파일의 App.config에 방언을 찾을 수있다 :

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
    <section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate"/> 
    </configSections> 
    <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"> 
    <session-factory> 
     <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property> 
     <property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property> 
     <property name="connection.connection_string_name">Northwind</property> 
     <property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property> 
     <mapping assembly="base_donnee"/> 
    </session-factory> 
    </hibernate-configuration> 
    <connectionStrings> 
    <add name="Northwind" connectionString="Data Source=HP-PC\SQLEXPRESS;Initial Catalog=Simulation; Integrated Security=true" providerName="System.Data.SqlClient"/> 

    </connectionStrings> 
</configuration> 

도움이 필요하십니까?

+1

사용자의 구성에 문제처럼 보인다, 당신은 확인 수있는 하나에 복합 ID를 변환하여 id 열 및 프로그램을 실행하려고 할 때 –

+0

내가 변환, 작동하지만 키 합성을 할 의무가 –

답변

2

당신은 당신의 Web.config에 다음과 같은 추가 connection.driver_class

를 누락 될 수 있습니다 : -

... 
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property> 
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property> 
... 
+0

아니기 때문에 드라이버가 여기에 작동하지 않았다 :