asp.net - 将 asp.net.mvc 添加到 ASP.NET : Controllers folder

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

我有一个 ASP.NET 应用程序,我正试图将它变成一个混合的 ASP.NET/ASP.NET.MVC 4.0 应用程序。

我尝试创建一个名为“Controllers”的文件夹,并在其中放置一个 .cs 文件:

public class PlayerGroupController : Controller
{
    public PlayerGroupController()
    {

    }

    public string Index()
    {
        return "Hello World!";
    }

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

任何访问“PlayerGroup/LayoutTemplates”的尝试都不起作用(只会出现“未找到”错误)

然后我将此文件移动到 App_Code 中,它工作正常。我很高兴我有一些工作,但我宁愿遵循 Controller 类位于名为 Controllers 的文件夹中的约定。

是否有一些我可以设置的神奇设置,以便它开始将 Controllers 识别为代码文件夹?

最佳答案

如果项目配置为网站项目,则所有代码文件 (*.cs) 必须位于 ~/App_Code 或其子文件夹中。如果项目是 Web 应用程序项目,代码文件可以放在项目中的任何位置,并由 VS 编译成一个 DLL,最终位于 ~/bin 目录中,然后由 ASP.NET 加载。

MVC 专门针对 Web 应用程序项目 (WAP),因此我建议创建一个新的 WAP 并将所有文件复制到其中,然后从那里开始。

关于asp.net - 将 asp.net.mvc 添加到 ASP.NET : Controllers folder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14930241/

相关文章:

c# - Umbraco 7 的异步 Controller 操作返回字符串

asp.net-mvc - 如何将 Asp.Net Identity 中的大 cookie 分成较小的 cookie 以允许许多声明?

c# - 使用 Expression<Func<...>> 的 linq to sql 自定义方法

javascript - 我的心智模型错了吗?如果使用 https 调用页面,则将使用 https 调用相对 css 路径

c# - 重载基础构造函数

asp.net-mvc - 为什么我的 IIS Express Web 应用程序项目在尝试加载时会在输出窗口中抛出错误?

c# - 身份在 Asp .Net MVC 5 中如何工作

c# - asp.net 如何检查一个项目是否存在于列表框中?

asp.net - 匹配 10-14 位数字的正则表达式

c# - 路由行为异常