asp.net-mvc – MVC – 无法解析视图(单独项目中的控制器和视图)
我有一个包含4个项目的解决方案:
> AS.Core.Common(参考:数据,Web) 在我的控制器中,我返回视图的任何地方:
它以红色突出显示,我得到一个“无法解析视图’?/ Views / Home / Index.cshtml’”. 所有四个项目都成功构建,但是当我点击F5时,我得到以下内容:
如何让我的控制器查看我的视图以便他们正确解决?我假设这就是我得到404响应的原因. 我的Global.asax.cs看起来像这样: public class MvcApplication : System.Web.HttpApplication { protected void Application_Start() { // Register the default hubs route: ~/signalr RouteTable.Routes.MapHubs(); AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); } } 我的RouteConfig.cs(我添加了名称空间,但似乎没有帮助) public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: "Default",url: "{controller}/{action}/{id}",namespaces: new[] { "AS.Core.Controllers" },defaults: new { controller = "Home",action = "Index",id = UrlParameter.Optional }); } 这是我的HomeController.cs public class HomeController : Controller { public ActionResult Index() { //return View("~/Views/Home/Index.cshtml"); return View(); } } 解决方法
在
asp.net-mvc中,您可以在相应控制器的视图文件夹中返回有效的视图.例如,如果你有一个名为Product的控制器,你可以在路径?/ Views / Product / Index.cshtml中找到一个文件夹.在Index操作中,您只需使用Controller类基础的View()方法返回一个视图,该方法将保留asp.net mvc中的所有控制器.样品:
public ActionResult Index() { return View(); } 在这种情况下,Asp.Net将在与Action,Index相同名称的文件夹上找到一个View. 您还可以使用View方法返回另一个View,因为您在文件夹上有相应的View,以获取示例: public ActionResult Index() { return View("About"); } 考虑到这种情况,您应该在Product文件夹中有一个名为About的View.样本:?/ Views / Product / About.cshtml. 如果将控制器更改为另一个项目(类库),则必须在asp.net mvc初始化上设置控制器的默认命名空间,在Global.asax文件和Application_Start方法上尝试类似的操作: ControllerBuilder.Current.DefaultNamespaces.Add("NamespaceOfYourProject.Controllers"); 看看这篇文章:http://dotnetslackers.com/articles/aspnet/storing-asp-net-mvc-controllers-views-in-separate-assemblies.aspx (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 使用Asp.Net 5进行实时重新加载
- asp.net-mvc – 为“简单”SaaS启动选择ORM(ASP.NET MVC)
- asp.net-mvc – 在ASP.NET MVC应用程序中放置数据操作和业务
- Asp.net MVC中Razor常见的问题与解决方法总结
- asp.net – 可以在正则表达式中执行加法吗?
- asp.net-mvc-4 – 如何验证货币字段?
- razor – ASP.NET mvc使用IEnumerable模型和输入标记帮助器
- asp.net-mvc – 什么CAPTCHA系统与ASP.NET MVC兼容?
- IIS部署asp.net mvc网站的方法
- 如何在asp经典中使用cURL发布数据?