我创建了一个WebApi,但无法将其添加为Web引用

时间:2016-10-13 16:15:20

标签: c# asp.net visual-studio asp.net-web-api

我跟着这个tutorial。我创建我的WebApi并从浏览器中运行正常。但是当尝试将其添加为Web引用时告诉我此错误。

  

网址http://localhost/WebApi/api/test处的文档未被识别为已知文档类型。   每种已知类型的错误消息可以帮助您解决问题:    - 来自'XML Schema'的报告是'根级别的数据无效。第1行,第1位。'。    - 来自'DISCO Document'的报告是'数据

TestController

namespace WebApi.Controllers
{
    public class TestController : ApiController
    {
        public HttpResponseMessage Get()
        {
            return new HttpResponseMessage()
            {
                Content = new StringContent("GET: Test message")
            };
        }

        public HttpResponseMessage Post()
        {
            return new HttpResponseMessage()
            {
                Content = new StringContent("POST: Test message")
            };
        }

        public HttpResponseMessage Put()
        {
            return new HttpResponseMessage()
            {
                Content = new StringContent("PUT: Test message")
            };
        }
    }
}

浏览器正常,但显示错误。

enter image description here

1 个答案:

答案 0 :(得分:0)

除了链接中的答案。您可以通过多种方式访问​​WebAPI控制器。

  1. 您可以使用Javascript,Ajax,AngularJs等从客户端访问。
  2. 如果你想在任何.Net应用程序上安装ASP.Net WebAPI Client,任何凸显Http请求的框架。 (控制台,WindowsForm等)然后在实例化HttpClient()之前添加引用。 请参阅下面的示例代码

        var client =new HttpClient(); 
     client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml")); 
    var result = client.GetAsync(new Uri("http://localhost:16665/api/myApiControllerName")).Result;