我在数据库中有2个表。配方和成分。 他们有多对多的关系,所以我有一个名为FormulaIngredient的db关联表。如何使用NHibernate将数据插入多对多关联表中
我正在使用C#.net和SQL服务器2005. 我的FormulaIngredient表具有ID,formulaID,ingredientID,ingredientAmount。 对于这个额外的成分,我在C#中创建了一个关联类。 现在,我将在数据库中保存一个公式。之后我想将该配方的成分列表保存在FOrmulaIngredient Table中。 我该怎么做?我无法在FormulaIngredient表中保存任何数据。 我FormulaIngredient类是
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace NutritionLibrary.Entity
{
public class FormulaIngredient
{
private int iD;
private Formula objFormula;
private Ingredient objIngredient;
private float ingredientAmount;
public FormulaIngredient()
{
}
public virtual int ID
{
get { return iD; }
set { iD = value; }
}
public virtual int IngredientID
{
get { return objIngredient.IngredientID; }
set { objIngredient.IngredientID = value; }
}
public virtual int FormulaID
{
get { return objFormula.FormulaID; }
set { objFormula.FormulaID = value; }
}
public virtual Ingredient ObjIngredient
{
get { return objIngredient; }
set { objIngredient = value; }
}
public virtual Formula ObjFormula
{
get { return objFormula; }
set { objFormula = value; }
}
public virtual float IngredientAmount
{
get { return ingredientAmount; }
set { ingredientAmount = value; }
}
}
}
这里是FormulaIngredient映射文件:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="NutritionLibrary.Entity.FormulaIngredient, NutritionLibrary" table="NutrientIngredient" lazy="false">
<id name="ID" column="ID" >
<generator class="native" />
</id>
<many-to-one name="ObjIngredient" column="ingredientID" class="NutritionLibrary.Entity.Ingredient, NutritionLibrary" not-null="true" />
<many-to-one name="ObjFormula" column="formulaID" class="NutritionLibrary.Entity.Formula, NutritionLibrary" not-null="true" />
<property name="IngredientAmount" column="ingredientAmount" type="float" not-null="true" />
</class>
</hibernate-mapping>
请帮助!!!!
确保在发布时将代码缩进4个空格,以便代码正确拾取。 – 2009-11-05 08:46:47