如何在Entity Framework中的外键字段中添加数据?

时间:2010-04-05 15:44:15

标签: c# asp.net visual-studio-2008 entity-framework

如何在Entity Framework中提供设置外键值字段。我有Kartlar实体(与kartlar表相关)。我需要简单的保存方法这个字段但是,RehberID,KAmpanyaId,BirimID是foregin Key ....

public static class SatisServicesUpdateTables
{
    public static void SaveKartlar(int RehberID, int KampanyaID, int BrimID)
    {
        using (GenSatisModuleEntities genSatisKampanyaCtx = new GenSatisModuleEntities())
        {
            Kartlar kartlar = new Kartlar();
            kartlar.RehberReference.EntityKey = new System.Data.EntityKey("genSatisKampanyaCtx.Rehber", "ID", RehberID);
            kartlar.KampanyaReference.EntityKey = new System.Data.EntityKey("genSatisKampanyaCtx.Kampanya", "ID", KampanyaID);
            kartlar.BirimReference.EntityKey = new System.Data.EntityKey("genSatisKampanyaCtx.Birim", "ID", BrimID);
            kartlar.Notlar = "hfhfhfhfhfhfghfghfgfghk";
            genSatisKampanyaCtx.AddToKartlar(kartlar);
            genSatisKampanyaCtx.SaveChanges();
        }
    }
}

但它引发了我的意思:ArgumentException未被用户代码

处理

link text

1 个答案:

答案 0 :(得分:1)

您的EntityKey的第一个参数应该是您的上下文名称,而不是您的可变名称:

new System.Data.EntityKey("GenSatisModuleEntities.Rehber", "ID", RehberID); 

和Rehber应该是您的EntitySet的名称。