为Owin项目增加WebApi

上一篇文章我们新建了一个Owin项目。

本节,我们来为其增加WebApi功能

项目右键》添加》新搭建基架的项目

选择Web API 2控制器

为默认控制器命名

点击添加后项目结构如下:

将WebApiConfig.cs排除出项目(我们这里用的是Owin,WebApi模板默认的注册逻辑就没用了)

同理,Global.asax.cs中GlobalConfiguration.Configure(WebApiConfig.Register);也注释掉,或者删除。

打开DefaultController.cs,添加如下代码:

        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

向Startup类增加如下代码:

            var config = new HttpConfiguration();
            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional, action = RouteParameter.Optional }
                );
            app.UseWebApi(config);

注意,把之前的app.Run测试代码注释掉

然后访问http://localhost:33964/api/default

已经可以正常访问了。IE弹出下载提示框。

使用FF上的Rest调试工具访问:

好了,目前已经可以正常访问WebApi里的相应控制器方法了。

posted @   Aricc  阅读(1060)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示