views:

27

answers:

1

How can I give set foreign key value field in Entity Framework. I have Kartlar entity (related from kartlar table). I need simple save method this field but, RehberID, KAmpanyaId,BirimID is 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();
        }
    }
}

But it throws to me : ArgumentException was unhandled by user code

link text

+1  A: 

The first parameter of your EntityKey should be your context name, not your varaible name:

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

and Rehber should be the name of your EntitySet.

moi_meme