如何在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未被用户代码
处理答案 0 :(得分:1)
您的EntityKey的第一个参数应该是您的上下文名称,而不是您的可变名称:
new System.Data.EntityKey("GenSatisModuleEntities.Rehber", "ID", RehberID);
和Rehber应该是您的EntitySet的名称。