Pregunta

Diga si tuviera esta tabla en mi db: Producto

Tenía

ProductId
ProductName
ProductType

Ahora, por la razón que sea no puedo nombrar mis cuadros de texto NombreProducto y ProductType por lo que ahora mi punto de vista Método sería el siguiente

public ViewResult Test([Bind(Exclude ="ProductId")] Product)

Así que ahora a través de mi juego alrededor nada sería emparejado en este producto, ya que tienen diferentes nombres.

Así que supongo que aquí es donde Prefijo vendría, pero no sé cómo usarlo. Ni cómo lo uso y no incluyen al mismo tiempo.

Puede alguien darme un ejemplo?

¿Fue útil?

Solución

El prefijo se utiliza la siguiente manera si en su vista que se tiene ...

<select name="p.ProductType">....</select>
<input type="text" name="p.ProductName" />

Puede enlazar el formulario de entrada a una instancia de su modelo haciendo algo como

public ActionResult([Bind(Prefix="p")]Product product)

Debe tener en cuenta que MVC haría esto automáticamente para usted si usted designó a su argumento de un método p.

El prefijo puede ser muy útil si usted está tratando de unir varias entidades al mismo tiempo (por ejemplo, dos campos de nombre).

Para utilizar el excluyen la unión a ciertas propiedades (es decir, evitar la gente que pasa en ProductIds en una forma forjada) acaba de establecer los nombres de propiedad para excluir

 public ActionResult([Bind(Prefix="p", Exclude="ProductId")]Product product)

Esto asegurará que el ProductID en su entidad nunca se consigue el sistema.

Si desea enlazar dos nombres de campos completamente diferentes, por ejemplo, Escriba a ProductType se puede ver en la unión de modelos personalizados o simplemente agarrando el campo de la FormCollection mismo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top