NHibernate - ORM di base
In questo capitolo ne tratteremo alcuni basic mappinge sai che dall'ultimo capitolo abbiamo la tabella del database così come la definizione della classe C #. Ora abbiamo bisogno di una mappatura che spieghi come tradurre da C # al database e viceversa.
Quindi andiamo avanti e aggiungiamo un nuovo file XML facendo clic con il pulsante destro del mouse sul progetto in Esplora soluzioni e selezionare Aggiungi → Nuovo elemento ...
accedere Student.hbm.xmlnel campo del nome. Dobbiamo specificare un assembly predefinito che saràNHibernateDemoAppe specificare anche uno spazio dei nomi predefinito. Questo accorcia solo molte delle altre definizioni di tipo che creeremo in questo file.
Di seguito è riportata l'implementazione nel file XML:
<?xml version = "1.0" encoding = "utf-8" ?>
<hibernate-mapping xmlns = "urn:nhibernate-mapping-2.2"
assembly = "NHibernateDemoApp" namespace = "NHibernateDemoApp">
<class name = "Student">
<id name = "ID">
<generator class = "native"/>
</id>
<property name = "LastName"/>
<property name = "FirstMidName"/>
</class>
</hibernate-mapping>
La prossima cosa che dobbiamo definire una classe; questa classe sarà la nostraStudent class. Successivamente, dobbiamo dire a NHibernate il nome dell'ID, che è ID e devo anche dire a NHibernate come generare ID, quindi il nostro generatore sarà di tipo nativo.
Il generatore di tipi nativi significa che in un database come SQL Server, utilizzerà la colonna Identity, il tipo di identità.
La prossima cosa che dobbiamo fare è dare i nomi delle proprietà. Quindi, aggiungi altre due proprietà per FirstName e LastName.
Ora stiamo leggendo questi file di mappatura dall'assembly. Quindi il modo migliore per farlo è averliHBM filescotto nella tua assemblea. Possiamo farlo semplicemente impostando una proprietà.
Ora fai clic con il pulsante destro del mouse sul progetto in Esplora soluzioni e seleziona Proprietà, vedrai il file Build Action field in cui il contenuto è selezionato per impostazione predefinita.
Seleziona la risorsa incorporata dall'elenco a discesa.
Quindi questo in realtà incorpora quel file XML all'interno di NHibernateDemoApp assemblaggio.