title: Entity Framework Updating with Related Entity
body: <p>I'm using the EF to try to update an entity with ASP.NET. I'm creating an entity, setting it's properties then passing it back to the EF on a separate layer with the ID so the change can be applied. I'm doing this because I only store the ID of the entity when it's been bound to the UI controls.</p>
  
  <p>Everything works for standard properties, but I can't update the Category.ID of a Product (a related entity). I've tried EntityKey, EntityReference and a few other but the category ID isn't saved. This is what I have:</p>
  
  <pre><code>Product product = new Product();
  product.CategoryReference.EntityKey = new EntityKey("ShopEntities.Categories", "CategoryID", categoryId);
  product.Name = txtName.Text.Trim();
  ... other properties
  StockControlDAL.EditProduct(productId, product);
  
  public static void EditProduct(int productId, Product product) {
   using(var context = new ShopEntities()) {
       var key = new EntityKey("ShopEntities.Products", "ProductID", productId);
       context.Attach(new Product() { ProductID = productId, EntityKey = key });
       context.AcceptAllChanges();
       product.EntityKey = key;
       product.ProductID = productId;
       context.ApplyPropertyChanges("ShopEntities.Products", product);
       context.SaveChanges();
   }
  }
  </code></pre>
  
  <p>I really want to use the EF but I seem to be having a few problems with using it with ASP.NET.</p>