Nhibernate教程2(3)
?
含有關系的表指的是像學生這樣,除了保存學生的基本信息,還希望把選課信息保存到學生的類中。這樣情況下不能用軟件來輔助產生對應的類和XML,這是NHibernate中唯一需要費腦筋學的地方。學生表對應的類和XML如下所示:
?
類文件(Student.cs) ? using System; ? using Iesi.Collections; ? namespace CodeTest{ ? ???????? public class Student{ ? ?????????????????? private int studentId; ? ?????????????????? private string studentName; ? ?????????????????? private string studentPassword; ? ?????????????????? private string emailAddress; ? ?????????????????? private DateTime dateCreated; ? ?????????????????? private ISet courses = ? new HashedSet(); ? ?????????????????? public int StudentId{ ? ??????????????????????????? get { return studentId; } ? ??????????????????????????? set { studentId = value; } ? ?????????????????? } ? ?????????????????? public string StudentName{ ? ??????????????????????????? get { return studentName; } ? ??????????????????????????? set { studentName = value; }???????? } ? ?????????????????? public string StudentPassword{ ? ??????????????????????????? get { return studentPassword; } ? ??????????????????????????? set { studentPassword = value; }?????????????????? } ? ?????????????????? public string EmailAddress{ ? ??????????????????????????? get { return emailAddress; } ? ??????????????????????????? set { emailAddress = value; }} ? public DateTime DateCreated{ ? ??????????????????????????? get { return dateCreated; } ? ??????????????????????????? set { dateCreated = value; }} ? ?????????????????? public ISet Courses{ ? ??????????????????????????? get{return courses;} ? ??????????????????????????? set{courses=value;} ? ?????????????????? }???????????????? ? ???????? } ? } ? | XML文件(Student.hbm.xml) ? <?xml version="1.0" encoding="utf-8" ?> ? <hibernate-mapping xmlns="urn:nhibernate-mapping-2.0"> ? ???????? <class name="NHibernateTest.Student, NHibernateTest" table="Student"> ? ?????????????????? <id name="StudentId" column="StudentId" type="Int32"> ? ??????????????????????????? <generator class="native" /> ? ?????????????????? </id> ? ?????????????????? <property name="StudentName" column= "StudentName" type="string" length="40"/> ? ?????????????????? <property name="StudentPassword" type="string" length="20"/> ? ?????????????????? <property name="EmailAddress" type="String" length="40"/> ? ?????????????????? <property name="DateCreated" type="DateTime" length="8"/> ? ???????? ???????? <set name="Courses" table="StudentCourse" inverse="false"> ? ?????????????????? <key column="StudentID"/> ? ?????????????????? <many-to-many column="CourseID" class=" NHibernateTest.Course, NHibernateTest "/> ? ?????????????????? </set> ? </class> ? </hibernate-mapping> ? |
總結
以上是生活随笔為你收集整理的Nhibernate教程2(3)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IntelliJ IDEA导包快捷键
- 下一篇: 数学题 HDOJ——2086 简单归纳