vgquotes/Src/VideoGameQuotes.Api/Mappings/Quote.hbm.xml

37 lines
1.8 KiB
XML
Raw Normal View History

2011-02-09 00:05:32 +00:00
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="VideoGameQuotes.Api" namespace="VideoGameQuotes.Api">
<class name="Quote" table="game_quote">
2011-02-09 00:05:32 +00:00
<id column="quote_id" name="Id" type="int">
<generator class="identity" />
</id>
2011-02-26 01:22:07 +00:00
<property name="text" access="field" column="quote_text" not-null="true" type="string" length="1024"/>
2011-02-09 00:05:32 +00:00
<property name="Created" column="created" not-null="true" type="DateTime" />
<property name="Modified" column="modified" not-null="false" type="DateTime" />
<many-to-one name="Creator" column="creator" not-null="true" foreign-key="fk_quote_user"/>
<many-to-one name="Game" column="game_id" not-null="true" foreign-key="fk_quote_game" fetch="join" />
<!-- denormalization for performance purposes -->
<property name="Score" column="score" not-null="true" index="idx_score_upvotes" />
<property name="UpVotes" column="upvotes" not-null="true" index="idx_score_upvotes" />
<property name="DownVotes" column="downvotes" not-null="true" />
<property name="FlagCount" column="flag_count" not-null="true" />
<set access="nosetter.camelcase" name="Categories" table="quote_category_map">
<key column="quote_id" />
<many-to-many class="VideoGameQuotes.Api.Category" column="category_id" />
</set>
<set access="nosetter.camelcase" name="Votes" table="vote" inverse="true" cascade="all-delete-orphan">
<key column="quote_id" not-null="true" />
<one-to-many class="VideoGameQuotes.Api.Vote" />
2011-02-09 00:05:32 +00:00
</set>
<set access="nosetter.camelcase" name="Flags" inverse="true" table="quote_flag" cascade="all-delete-orphan">
<key not-null="true" column="quote_id" />
<one-to-many class="VideoGameQuotes.Api.QuoteFlag" />
2011-02-09 00:05:32 +00:00
</set>
</class>
</hibernate-mapping>