Asumiendo la tabla CategoryProduct
, únicamente se hace de dos FKs uno a uno a Product
y Category
... que el FAN por defecto no producirá una entidad CategoryProduct
, en lugar de manipular esa mesa tendrá que crear/eliminar relaciones usando Product.Categories
o Category.Products
colecciones.
I.e. para añadir una fila:
product.Categories.Add(category); // or category.Products.Add(product);
Para eliminar una fila:
product.Categories.Remove(category); // or visa versa
para consultar la tabla es decir, para obtener las filas de esa tabla:
var pc = from c in ctx.Categories
from p in c.Products
select new {CategoryID = c.ID, ProductID = p.ID};
y actualizar no lo hace sentido, porque el PK (que no puede cambiar) es todas las columnas, es decir, ninguna de las columnas de la fila se puede actualizar, por lo que la fila en sí misma no se puede actualizar (excluyendo las eliminaciones, por supuesto).
Esperanza esto ayuda
Alex James
Gracias Alex. Pero, ¿cómo puedo finalizar las columnas de un producto? Recibo este error: Un objeto de entidad no puede ser referenciado por varias instancias de IEntityChangeTracker. El código es: public int actualización estática (Producto C) { usando (SimvideoEntities ctx = new SimvideoEntities()) { ctx.Attach (c); Common.SetModified (ctx, c); return ctx.SaveChanges (true); } } – Shuaib
Ok, obtuve la actualización y eliminé el trabajo pero primero tengo que obtener el registro del contexto y luego guardarlo/eliminarlo. – Shuaib
Gracias Alex que ayudó mucho.Sigan con el buen trabajo. – Shuaib