2011-11-28 37 views
1

是否应该创建可响应不同参数或创建不带参数的不同操作(如果可能)的通用操作?MVC操作:通用/参数化还是多个操作

无论调用哪个操作,返回类型将始终保持不变。不会是不同意见的情况等。

上述任何方法的缺点/优点是什么?

回答

1

使用参数是一种更好的方法,因为每个动作都需要有不同的视图。性能明智没有区别,但维护明智,有两个行动做同样的事情,并返回相同类型的意见似乎是多余的。

例如,我将有一个动作,并传递给它的类别名称,而不是有一个作用为每个类别

实施例的代码: -

public ActionResult Catalog(string id, int?page) 
    { 
     Category catalog = pe.Categories.Where(cat => cat.Name == id).Single(); 
     int pageIndex = page ?? 1; 
     CatProView catProView = new CatProView 
           { 
            Name = catalog.Name, 
            SubCategories = catalog.SubCategories, 
            PagedProducts = catalog.Products.ToPagedList(pageIndex, PageSize) 
           }; 
     return View(catProView); 
    } 
+0

的问题是关于多个操作一对相对的与params行动不是多个控制器。 –

+0

多数民众赞成什么....如果你检查代码这就是我正在演示。带有参数的单一动作与许多相反。 –

+0

我错误地写了控制器代替行动,抱歉错误的错误。 –