【问题标题】:MVC Controller from library does not get called库中的 MVC 控制器不会被调用
【发布时间】:2014-06-06 09:41:55
【问题描述】:

我有一个 MVC 应用程序和它所引用的一些库。在其中一个库中,我创建了一个控制器类。但是,当导航到控制器/动作名称时,它似乎永远不会从这个库中到达控制器。

using System;
using System.Web;
using System.Web.Mvc;

namespace Solution.Lib.Test
{
    public class CustomPrintController : Controller
    {

    [HttpGet]
    public string Index()
    {
        return "Solution.Lib.Test says Hi";
    }

    }
}

当我浏览到 localhost/CustomPrint/Index 时,我得到:

“/”应用程序中的服务器错误。

找不到资源。

描述:HTTP 404。您要查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请查看以下 URL 并确保其拼写正确。

请求的 URL:/CustomPrint/Index

【问题讨论】:

  • @Murali 是的,我看过那个帖子。但是,在他的情况下,他可以调用库中的控制器。我没有那么远。
  • 您为什么要在不同的库中创建控制器?通常,具有控制器相关类的项目将是应用程序的主要入口点,而其他类(如服务、实用程序、域、数据对象)将保存在不同的项目中..
  • @Muthu 因为这将作为插件处理。在不更改标准的情况下向应用程序添加自定义视图和控制器。
  • 您的应用程序中似乎没有正确配置路由..

标签: asp.net-mvc asp.net-mvc-4


【解决方案1】:

试试这个:

这是你的控制器代码:

using System;
using System.Web;
using System.Web.Mvc;

    {
    public class CustomPrintController : Controller
    {

    [HttpGet]
    public ActionResult Index()
    {
        return View();
    }

    }
}

现在create a View 为您的Index Action Add View 选项:

这是你的 Index.cshtml 代码:

@{
    ViewBag.Title = "Index";
}

<h2>String</h2>
<p>
     namespace Solution.Lib.Test Says Hi
</p>

希望它有效...!

【讨论】:

  • 不幸的是它不起作用。我在 return View(); 处添加了一个断点;但它永远不会被击中。
猜你喜欢
  • 2012-04-12
  • 1970-01-01
  • 1970-01-01
  • 2016-12-03
  • 2012-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多