Опубликовать действие Создать в asp.net MVC - PullRequest
1 голос
/ 17 ноября 2009

Я использую базу данных MS Northwind и использую Entity Framework. Я хочу создать новый продукт и использовать dropdownList для загрузки CategoryName из таблицы категорий.

 public ActionResult Create()
 {
        var categories = from c in _en.Categories select c;
        ViewData["CategoryID"] = new SelectList(categories, "CategoryID", "CategoryName");
       return View();
 }

 <p>
        <label for="ds">CategoryID:</label>
        <%=Html.DropDownList("CategoryID", (SelectList)ViewData["CategoryID"])%>
 </p>

Вопрос: Как сохранить данные из выпадающего списка?

[AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Create([Bind(Exclude = "ProductID")] Products productToCreate)
    {
        if (!ModelState.IsValid)
            return View();

        var c = _en.Categories.FirstOrDefault(z => z.CategoryID == ??? XXXX ???);

        productToCreate.Categories = c;

        _en.AddToProducts(productToCreate);

        _en.SaveChanges();

        return RedirectToAction("Index");
    }

как получить CategoryID из dropdownList?

1 Ответ

1 голос
/ 17 ноября 2009

Просто добавьте CategoryID к аргументам.

public ActionResult Create([Bind(Exclude = "ProductID")] Products productToCreate, string CategoryID)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...