Hi!
I have created a partial class of an entity for getting a foreign key property on it.
public partial class Artikel
{
public int WarengruppenID
{
get
{
if (WarengruppeReference.EntityKey == null) return 0;
return (int)WarengruppeReference.EntityKey.EntityKeyValues[0].Value;
}
set
{
WarengruppeReference.EntityKey =
new EntityKey("ConsumerProtectionEntities.Warengruppe", "WarengruppenID", value);
}
}
}
Now I change the foreign key (property) but nothing happens?!
What do I have to do to update a foreign key for an entity?
I use EF 3.5 SP1 in ASP.NET MVC 2
EDIT
id = ArtikelID updatedArtikel = Artikel properties ArtikelWarengruppen = selected DropDownList value
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id, Artikel updatedArtikel, string ArtikelWarengruppen)
{
try
{
int artikelWarengruppenID = int.Parse(ArtikelWarengruppen);
var originalArtikel = (from art in _db.Artikel.Include(typeof(Warengruppe).Name)
where art.ArtikelID == id
select art).FirstOrDefault();
_db.Attach(originalArtikel);
updatedArtikel.ArtikelID = id;
// Update FK
updatedArtikel.WarengruppenID = artikelWarengruppenID;
_db.ApplyPropertyChanges(typeof(Artikel).Name, updatedArtikel);
_db.SaveChanges();
return RedirectToAction("Index");
}
catch
{
return View();
}
}