0
   TABLE BOOKING (
  BOOK_ID  
  PERSONAL_ID                             
  ORGINIZER                      
  TITLE
    PRIMARY KEY ( BOOK_ID )
    FOREIGN KEY ( PERSONAL_ID)
);

TABLE PERSONAL
    (
      ID
      NAME
      SURNAME
      EMAIL         
      PRIMARY KEY (ID) 
    );

私の質問は、テーブル PERSONAL をどのようにマッピングできますか? 私の問題は、PERSONAL に FOREIGN KEY がないため、PERSONAL をマップする方法がわからないことです。そのテーブルから NAME、SURNAME、および EMAIL を取得する必要があります。

誰かが助けてくれることを願っています。

私のマッピングはこれまでのところ次のようになります。

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">

  <class name="Depp.Domain.Booking, Depp.Core" >
    <id name="ID" unsaved-value="0" column="ID">
      <generator class="native">
        <!--<param name="sequence">GLOBALSEQUENCE</param>-->
      </generator>
    </id>
    <property name="Title" ></property>
    <property name="TitleEnabled" type="yes_no">
      <column name="THEMA_ENABLED"/>
    </property>
    <property name="ORGANIZER" column="PERSONAL_ID" not-null="true" ></property>

    <many-to-one name="Personal" class="Book.Domain.Booking, Book.Core" column="Personal_ID"
            not-null="true" />

  </class>


  <class name="Book.Domain.Personal, Book.Core">
    <id name="id" column="ID">
      <generator class="native"/>
    </id>

    <component name="Booker" class="Book.Domain.Person, Book.Core">
      <property name="Name" column="NN" />
      <property name="Surname" column="VN"/>
      <property name="Email" column="EMAIL" />
      <property name="Phone" column="TEL" />
    </component>
  </class>

</hibernate-mapping>

多対 1 の関係を使用すると、Web サイトがクラッシュします。

4

1 に答える 1

1

あなたが書く:

ウェブサイトがクラッシュする

これは詳細なバグ レポートではありません ;-)。詳細を提供していただけると助かります。

いずれにせよ、マッピングから、おそらく間違っていることが 1 つ<many-to-one />あります。それは、マッピングしているプロパティのクラス (「個人」) を示す必要があり、それを含むクラス (「予約」) ではありません。これらの行に沿って何かを試してください:

<many-to-one name="Personal" 
    class="Book.Domain.Personal, Book.Core" 
    column="Personal_ID"
    not-null="true" />

主な違いはclass属性にあります。属性を完全に省略して、NHibernate にエンティティのプロパティ タイプから推測させることもできると思います。

詳細については、多対一のドキュメントを参照してください。

于 2012-08-07T09:01:56.077 に答える