ASP MVC 3 связать модель другого типа класса - PullRequest
1 голос
/ 18 марта 2012

Если у меня есть два класса (Product & ProductSearch) с одним и тем же свойством "Заголовок"

Если у меня есть поле в форме:

<input type="textbox" name="Product.Title" id="Product_Title"/>

, я могу связать его вконтроллер использует:

public ActionResult Search(Product product)

Но есть ли способ указать аргумент привязки, чтобы он связывался с:

public ActionResult Search(ProductSearch productSearch)

Я пытался [Bind(Prefix = "Product")] безрезультатно.

1 Ответ

1 голос
/ 18 марта 2012

[Bind(Prefix = "Product")] должно работать. Пример:

Модель:

public class ProductSearch
{
    public string Title { get; set; }
}

Контроллер:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    [HttpPost]
    public ActionResult Index([Bind(Prefix = "Product")]ProductSearch productSearch)
    {
        return Content(productSearch.Title);
    }
}

Вид:

@using (Html.BeginForm())
{
    <input type="text" name="Product.Title" id="Product_Title" />
    <button type="submit">OK</button>
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...