c# – ASP.NET web.api帮助页面不显示任何描述

当我运行我的程序时,它只显示“在这里提供API的一般描述”.但没有内容显示.如下图所示:
http://i.stack.imgur.com/unBmb.png

我的问题类似于这个ASP.NET Web Api Help Page doesn’t show any tips,但它没有提供任何解决方案.

我从“将帮助页面添加到现有项目”中遵循了本教程http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/creating-api-help-pages,除了“ValuesController”之外,所有内容都是从nuGet自动创建的.

我猜这就是问题所在.

我的ValuesController:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
namespace WebApiHelperTest.Controllers
{
    public class ValuesController : ApiController
    {
        /// <summary>
        /// Gets some very important data from the server.
        /// </summary>
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        /// <summary>
        /// Looks up some data by ID.
        /// </summary>
        /// <param name="id">The ID of the data.</param>
        public string Get(int id)
        {
            return "value";
        }

        // POST api/values
        public void Post([FromBody]string value)
        {
        }

        // PUT api/values/5
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE api/values/5
        public void Delete(int id)
        {
        }
    }
}

有没有人有这方面的解决方案,或任何可能出错的建议?

(我还制作了一个新的asp.net web api-project(从start开始包含valuescontroller),这个工作正常..)

最佳答案 我找到了解决方案!

第1步:我在Controller-folder中添加了一个valuesController,作为一个空的web api2 Controller.然后粘贴教程中的代码:

using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;

namespace yournamespace.Controllers
{

public class ValuesController : ApiController
{
    /// <summary>
    /// Gets some very important data from the server.
    /// </summary>
    public IEnumerable<string> Get()
    {
        return new string[] { "value1", "value2" };
    }

    /// <summary>
    /// Looks up some data by ID.
    /// </summary>
    /// <param name="id">The ID of the data.</param>
    public string Get(int id)
    {
        return "value";
    }
}
}

第2步:将此代码添加到route.config(如果您从头开始创建api项目,则会自动创建),因此在本教程中未提及.

routes.MapHttpRoute(
        name: "DefaultApi",
        routeTemplate: "api/{controller}/{id}",
        defaults: new { id = RouteParameter.Optional }
        );

当我运行该程序时,它工作. 🙂

点赞