0

目标

将报价视为控制器中的一个类别。

问题

我有一个控制器,其名称为ProductsController. 在其中,我有一个名为Category. 当请求此方法时,它会响应与作为参数传递的类别相对应的产品列表视图。按照代码:

[HttpGet]
public ActionResult Category(string categoryName = null)
{
    if (Regex.Match(categoryName, @"\d+").Success)
    {
        int categoryId = Convert.ToInt32(Regex.Match(categoryName, @"\d+").Value);
        string sluggedCategoryName = CommodityHelpers.UppercaseFirst(CommodityHelpers.GenerateSlug(Categories.GetDetails((sbyte)categoryId).Category_Name));

        if (String.Format("{0}-{1}", categoryId, sluggedCategoryName) == categoryName)
        {
            ViewBag.Title = Categories.GetDetails((sbyte)categoryId).Category_Name;
            ViewBag.CategoryProductsQuantity = Categories.GetDetails((sbyte)categoryId).Category_Products_Quantity;
            ViewBag.CurrentCategory = sluggedCategoryName;
            return View(Products.BuildListForHome(categoryId, null));
        }
        else
        {
            return View("404");
        }
    }
    else
    {
        return View("404");
    }
}

但是当“Offers”作为参数传递时,我想返回其他特定视图。

我怎样才能做到这一点?

4

3 回答 3

3
if (categoryName == "Offers")
    return View("SomeView", Products.BuildListForHome(categoryId, null));
于 2013-06-14T19:33:31.020 回答
0

您可以指定要返回的视图作为参数,如下所示:

return View("Offers", data);
于 2013-06-14T19:33:58.127 回答
0

在检查 Offers 的方法开头放一个“if”“then”,如果条件满足则返回你的 Offers View。

于 2013-06-14T19:35:49.293 回答