데이터베이스에 2 개의 테이블이 있습니다. 수식 및 성분. 그들은 many-to-many 관계를 가지고 있으므로, FormulaIngredient라고 불리는 db 테이블에 연관 테이블을 가지고 있습니다.NHibernate를 사용하여 many-to-many 연관 테이블에 데이터를 삽입하는 방법
저는 C# .net 및 SQL server 2005를 사용하고 있습니다. 내 FormulaIngredient 테이블에 ID, formulaID, ingredientsID, ingredientAmount가 있습니다. 이 extra ingredientsAmount 필드에 대해 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 자리만큼 들여 쓰기되어 코드로 올바르게 선택되도록하십시오. –