将参数返回到操作后未找到视图
本文关键字:视图 操作 参数 返回 | 更新日期: 2023-09-27 18:14:50
我的控制器工作得很好,在没有参数的情况下击中时返回正确的视图,但是当我将参数传递给动作时,未找到视图。控制器位于Admin区域,路由注册信息显示在
下面。public class AdminAreaRegistration : AreaRegistration
{
public override string AreaName
{
get { return "Admin"; }
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "ZedvancePortal.Areas.Admin.Controllers" }
);
}
}
appstart文件夹中的RouteConfig.cs
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "ZedvancePortal.Controllers" }
);
}
}
区域注册到全局。asax页面。这是下面的控制器动作。
public ActionResult Review(DateTime? start, DateTime? end)
{
var model = _db.Applications.Include(a => a.ApplicationStatus).OrderByDescending(a => a.ApplicationDate);
if (start != null && end != null)
{
model = model.Where(a => a.ApplicationDate >= start && a.ApplicationDate <= end).OrderByDescending(a=>a.ApplicationDate);
}
return View(model.ToList());
}
在第一次加载时,没有从评审传递的开始和结束参数。CSHTML视图,它可以正确加载。然而,当我传入这些参数,并试图返回参数过滤结果到相同的视图,我得到错误
未找到视图'Review'或其母视图或没有视图引擎支持搜索位置。以下地点是搜索:~//ApplicationReview/Review.aspx观点~/视图/ApplicationReview/审查。ascx ~//共享/Review.aspx观点~/视图/共享/审查。ascx ~//ApplicationReview/Review.cshtml观点~/视图/ApplicationReview/审查。vbhtml ~//共享/Review.cshtml观点~/视图/共享/Review.vbhtml
有什么问题吗?
问题是,如果你只提到Name of View,它会导致Ambiguity
,因为它发现了Web service
和View
,并会出现错误以避免混淆
尝试使用视图的完整路径,例如
return View("~/Views/ApplicationReview/Review.cshtml",model.ToList());