2016-11-03 6 views
0

私はWebアプリケーションで作業しています。私はテーブルとクラスをマップしたい。今私は3つのテーブルを持っています。私は、これらのテーブルとクラスのXMLマッピングをしたいが、テーブル構造を変更することはできません。2つのテーブルを持つ2つのクラスのnHibernateマッピング

私はNHibernateのは非常にdetailed documentationを持って

> Table and Fields 
>  1. **User** 
>  UserID, 
>  FirstName, 
>  LastName, 
>  2. **Detail** 
>  DetailID , 
>  UserID, 
>  Address, 
>  City 
    3. Contact 
    ContactID 
    UserID 
    Mobile 
    Home 

I have two classes. User and Detail 
    public class User 
    { 
    public RegionalPreference() 
      { 
       RP_Region = new List<RegionalPreference_Region>(); 
      } 
      public virtual uint UserID { get; set; } 
      public virtual string FirstName{ get; set; } 
      public virtual string LastName { get; set; } 
      public virtual Contact Contacts { get; set; } 
      public virtual List<Detail> Details { get; set; } 
    } 

    public class Detail 
     { 
       public virtual uint DetailID { get; set; } 
       public virtual uint UserID { get; set; } 
       public virtual string Address{ get; set; } 
       public virtual string City { get; set; } 
     } 

> public class Contact 
>   { 
>     public virtual uint UserID { get; set; } 
>     public virtual string Mobile{ get; set; } 
>     public virtual string Home { get; set; } 
>   } 

答えて

1

このような詳細を持っています。

このtutorialはあなたにとって役に立ちます。既にクラスがあるので、にマッピングすることができます。のマッピングを定義してください。

1

まず、コードにコンストラクタpublic RegionalPreference()が正しくありません。コンストラクタの名前がクラス名と一致しません。また、RP_Regionは決して定義されず、使用されません。

私はマッピングファイルを用意する準備ができていないので、作成方法を説明します。私を信じて、それは非常に簡単です。

this初心者チュートリアルを参照してください。

DetailテーブルをDetailとマッピングすると、POCOは前方に向かっています。私はそれにキャッチを見ません。チュートリアルthisの「XMLベースの設定」を参照してください。

UserContactテーブルをPOCOでマッピングすることについては、NHibernateでcomponentを使用する必要があります。チュートリアルthisを参照してください。

私はこれがあなたを助けてくれることを願っています。

関連する問題