Visual Studio 2017社区版中Web API Controller模板位置查询
找不到Visual Studio 2017中.NET Core 2.0 API项目的Web API控制器模板?
我之前在VS2017 Community里搞.NET Core 2.0项目时也碰到过这个问题,给你几个排查和解决的方向:
1. 先确认你找对了路径
右键你的API项目,依次选择添加 -> 新建项(或者直接按快捷键Ctrl+Shift+A打开添加窗口):
- 在左侧导航栏展开Visual C# -> .NET Core
- 正常情况下,你能在右侧看到API控制器类这个模板;如果没看到,继续往下看。
2. 检查是否缺少必要的VS组件
有时候模板缺失是因为对应的工作负载没装全:
- 打开Visual Studio Installer,找到你的VS2017 Community安装条目,点击修改
- 切换到「工作负载」标签,确保勾选了**.NET Core跨平台开发**这个工作负载
- 再去「单个组件」里确认ASP.NET和Web开发工具已经安装,这个组件是Web API模板的依赖项
3. 手动创建控制器(应急方案)
如果上面的方法都不行,你可以手动创建一个符合要求的控制器:
- 添加一个普通的C#类文件,命名比如
ValuesController.cs - 让它继承自
ControllerBase(记得引用Microsoft.AspNetCore.Mvc命名空间) - 加上
[ApiController]和路由特性,示例代码如下:
using Microsoft.AspNetCore.Mvc; using System.Collections.Generic; namespace YourApiProjectNamespace.Controllers { [ApiController] [Route("api/[controller]")] public class ValuesController : ControllerBase { // GET api/values [HttpGet] public ActionResult<IEnumerable<string>> Get() { return new string[] { "value1", "value2" }; } } }
内容的提问来源于stack exchange,提问作者Bill G
相关产品推荐
相关产品推荐

