Web-API mit Swagger
Ich bin neu to.NET /MVC/Web API. Erstellt habe ich eine .Net-Web-API, welche akzeptiert den Eingabeparameter Abfragen der OracleDatabase und gibt das Ergebnis im JSON-Format. Ziemlich viel, die folgenden, einfachen C# - codes. Und es funktioniert perfekt.Mein Controller sieht aus wie
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;
}
Aber das Web-API kann nicht verwendet werden, da das Add service reference in Visual Studio, indem Sie die client-Anwendung. Also habe ich versucht zu verwenden, Swagger, installierte ich Sie. Ich bin immer Fors Seite und können zum testen der API, indem Sie query-input und es tut Ergebnis zurückgeben.
Ich bin nicht verstehen, was ist der Endpunkt-URL geben wir den Client zu nutzen, um Ihnen Metadaten aus der API. Oder muss ich dazu eine weitere Konfiguration zum generieren von Metadaten. Ich bin neu zu .NETTO-und stecken mit diesem.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich bin mir nicht sicher, was meinst du mit client wenn Sie mithilfe von MVC.
Hast du zwei apps:
a) front-end .NET app UND
b) backend .Die NETTO-app, dass die Gespräche der db?
Zwei .NET apps
Check-out
Die ersten Schritte mit der API-Apps, ASP.NET und Swagger in Azure App Service (es ist nicht wirklich relevant, dass es für Azure).
Dieses tutorial beschreibt ein setup, wo es gibt .NET-apps und der in der Mitte importiert eine Fors 'Datei' zu konsumieren, die API der back-end-app, die spricht, um die db.
In meiner Erfahrung das setup ist verschwenderisch, aber ich weiß nicht, was Ihre Bedürfnisse sind.
Ein .NET app
Wenn Sie nur eine MVC-app, dann gibt es wirklich keinen client.
Kann dies nützlich sein:
Erstellen Sie eine ASP.NET MVC-app mit Authentifizierung und SQL-DB und bereitstellen von Azure App Service
Geben Sie ein client die URL zu Fors Dok Dokumentation. Die Dokumentation liefert Sie den URL zum senden der JSON auch, wenn Sie klicken Sie auf die Schaltfläche "testen".
https://localhost:46151/swagger/docs/v1
[Fiddler] The connection to 'localhost' failed. Error: ConnectionRefused (0x274d). System.Net.Sockets.SocketException No connection could be made because the target machine actively refused it 127.0.0.1:46151