我想在控制器中调用一个方法。为此,假设默认路由,我必须有一个与我正在调用的控制器匹配的视图。
所以如果我有一个控制器动作
public ActionResult Edit(booking booking)
然后我必须有一个名为Edit的视图。
是吗?
我想要做的是从给定页面调用我的控制器中的任何操作,而不存在相同名称的视图。
因此,如果我在编辑页面上,我应该能够调用名为createproduct的操作,而不会有createproduct视图。
答案 0 :(得分:0)
您不需要为每个控制器操作都有一个视图。您可以通过调用正确的URL来调用操作,这是MVC和路由的优势之一。路线不必代表物理位置。您应该可以执行以下/Controller/Edit/booking
答案 1 :(得分:0)
控制器操作不必返回视图。您倾向于看到action方法返回View(),默认情况下呈现与action方法同名的视图。但是您可以返回View(“SomeOtherViewName”)。您还可以返回各种其他结果,例如FileResult(返回文件),HttpStatusCodeResult(返回没有内容的HTTP响应代码),JsonResult(返回Json),Content(返回一些字符串)等.Controller类有方法可以帮助返回其中一些结果类型:File,Json,Content。