0

我创建了一个新的 MVC 项目。我创建了一个名为 APIController 的空控制器:

public class APIController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    public ActionResult Test()
    {
        return View();
    }
}

我已经创建了相应的视图,除了“索引”和“测试”这个词之外,它们都是空的。

当我去myurl.com/Account它工作

当我去myurl.com/Account/Test我得到一个 xml 错误说:

未找到与请求 URI [...] 匹配的 HTTP 资源

找不到与名为“帐户”的控制器匹配的类型。

这一定是菜鸟错误。项目中的其他所有内容都是默认的。RegisterRoutes 方法是默认的:

routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

我错过了什么愚蠢的事情?

如果您能解释为什么该错误是 XML 错误而不是标准的黄屏死机,则可以加分...

4

2 回答 2

2

问题解决了。

事实证明,如果你调用你的控制器 APIController MVC 会完全不同地对待它。将其重命名为 ABCController 效果很好。

我不是在编写 API,而是在编写管理 API 的网站!

啊,谢谢MVC!

于 2013-11-11T16:51:06.747 回答
0

您可以检查您创建的控制器是否继承ApiController而不是标准 Controller

这也可以解释为什么错误消息以 XML 形式返回。

于 2013-11-11T16:46:04.900 回答