【发布时间】:2017-04-01 17:56:58
【问题描述】:
我是 .NET /MVC/ Web API 的新手。我创建了一个 .Net Web API,它接受输入参数查询 OracleDatabase 并以 JSON 格式返回结果。几乎遵循简单的 C# 代码。而且效果很好。我的控制器看起来像
public class DataController : ApiController
{
[HttpGet]
public HttpResponseMessage Getdetails(string ROOM, DateTime DOB_GT)
{
List<OracleParameter> prms = new List<OracleParameter>();
prms.Add(new OracleParameter("ROOM", OracleDbType.Varchar2, ROOM, ParameterDirection.Input));
prms.Add(new OracleParameter("DOB_GT", OracleDbType.Date, DOB_GT, ParameterDirection.Input));
string connStr = ConfigurationManager.ConnectionStrings["SDataBaseConnection"].ConnectionString;
using (OracleConnection dbconn = new OracleConnection(connStr))
{
DataSet userDataset = new DataSet();
var strQuery = "SELECT * from SAMPLE_RESULTS_VW where ROOM = :ROOM and DOB > :DOB_GT ";
var returnObject = new { data = new OracleDataTableJsonResponse(connStr, strQuery, prms.ToArray()) };
var response = Request.CreateResponse(HttpStatusCode.OK, returnObject, MediaTypeHeaderValue.Parse("application/json"));
ContentDispositionHeaderValue contentDisposition = null;
if (ContentDispositionHeaderValue.TryParse("inline; filename=TGSData.json", out contentDisposition))
{
response.Content.Headers.ContentDisposition = contentDisposition;
}
return response;
}
但客户端应用程序无法将此 Web API 用作 Visual Studio 中的添加服务引用。所以我尝试使用 Swagger,我安装了它们。我正在获取 Swagger Page 并能够通过提供查询输入来测试 API,它确实返回了结果。
我不明白我们将给客户端用来从 API 获取元数据的端点 URL 是什么。或者我有没有做任何进一步的配置来生成元数据。我是 .NET 的新手并且被困在这个问题上。
【问题讨论】:
标签: c# asp.net asp.net-web-api swagger