Префикс используется следующим образом, если, по вашему мнению, у вас есть ...
<select name="p.ProductType">....</select>
<input type="text" name="p.ProductName" />
Вы можете привязать входящую форму к экземпляру вашей модели, выполнив что-то вроде
public ActionResult([Bind(Prefix="p")]Product product)
Вы должны заметить, что MVC сделает это автоматически для вас, если вы назвали аргумент вашего метода p.
Префикс может быть очень полезен, если вы пытаетесь связать несколько сущностей одновременно (например, два поля имени).
Чтобы использовать привязку исключения к определенным свойствам (т. Е. Избегать людей, передающих ProductIds в поддельной форме), просто задайте имена свойств для исключения
public ActionResult([Bind(Prefix="p", Exclude="ProductId")]Product product)
Это гарантирует, что ProductId для вашей сущности никогда не будет установлен.
Если вы хотите связать два совершенно разных имени поля, например Введите ProductType, чтобы посмотреть привязку пользовательской модели или просто выбрать поле из FormCollection самостоятельно.