You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VS Code或.NET CLI中为ASP.NET MVC添加Area?

在VS Code及终端中为ASP.NET MVC添加Area的方法

方法一:使用.NET CLI代码生成工具

这是最快捷的方式,通过终端命令即可自动生成Area的完整结构:

  1. 安装代码生成工具(首次使用需执行)
    打开终端(VS Code可按`Ctrl+``唤起内置终端),运行以下命令全局安装ASP.NET代码生成工具:

    dotnet tool install --global dotnet-aspnet-codegenerator
    

    若项目未安装代码生成依赖包,还需执行:

    dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
    
  2. 生成指定名称的Area
    切换到项目根目录,执行命令(将[AreaName]替换为你的Area名称,比如Admin):

    dotnet aspnet-codegenerator area [AreaName]
    

    执行完成后,会自动在项目中创建Areas/[AreaName]目录,并生成Controllers、Models、Views文件夹及必要的配置文件。


方法二:手动创建Area结构

如果不想依赖CLI工具,也可以手动搭建Area的目录和文件:

  1. 创建基础目录结构

    • 在项目根目录创建Areas文件夹(若不存在)
    • 在Areas下创建对应名称的子文件夹(如Admin)
    • 在该子文件夹内创建Controllers、Models、Views三个核心文件夹(按需可添加Data文件夹用于数据操作)
  2. 配置Views目录的Web.config
    在Areas/[AreaName]/Views下创建Web.config文件,内容可复制项目根目录Views/Web.config的内容,确保视图引擎配置正确。

  3. 创建Area控制器
    在Controllers文件夹中创建控制器(如AdminController.cs),需注意:

    • 控制器类继承自Controller
    • 添加[Area("[AreaName]")]特性指定所属Area
    • 可通过属性路由定义访问路径,示例:
      using System.Web.Mvc;
      
      namespace YourProjectName.Areas.Admin.Controllers
      {
          [Area("Admin")]
          [Route("Admin/[controller]/[action]")]
          public class AdminController : Controller
          {
              public ActionResult Index()
              {
                  return View();
              }
          }
      }
      
  4. 配置全局路由(可选,若使用属性路由可跳过)
    打开项目根目录的RouteConfig.cs,添加Area的路由规则,示例:

    routes.MapRoute(
        name: "Admin_default",
        url: "Admin/{controller}/{action}/{id}",
        defaults: new { action = "Index", id = UrlParameter.Optional },
        namespaces: new[] { "YourProjectName.Areas.Admin.Controllers" }
    );
    

    注意将命名空间替换为你项目的实际命名空间。


注意事项

  • 使用CLI生成时,若提示找不到命令,可尝试重启终端或检查环境变量是否包含.NET工具路径
  • 手动创建时需确保命名空间与目录结构一致,避免路由匹配失败
  • 属性路由和全局路由二选一即可,推荐使用属性路由更灵活

内容的提问来源于stack exchange,提问作者Amir Kabir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 07:40:34