Immediate database Web API? Representational State Transfer (REST or RESTful) is a technical description of how the World Wide Web works. If to imagine that the Web is a device, and it could have an operating system, its architectural style would be RESTful. A RESTful API is a type of web server that enables user-operated or automated clients to access resources that model a system’s data and functions. A well-designed REST API entice developers to use the web service and is today a must-have feature.
Another advantage of SOAP is that it offers built-in retry logic to compensate for failed communications. REST, on the other hand, doesn’t have a built-in messaging system. If a communication fails, the client has to deal with it by retrying. There’s also no standard set of rules for REST. This means that both parties (the service and the consumer) need to understand both content and context. At the end of the day, the best protocol is the one that makes the most sense for the organization, the types of clients that you need to support, and what you need in terms of flexibility.
If you need to develop a REST API for a database-driven application, it’s almost irresistible not to use the database tables as REST resources, the four HTTP methods as CRUD operations, and then simply expose your thinly-wrapped database as a REST API. The problem is that one of the foundations of the REST architecture is that the client-facing representation of a resource must be independent of the underlying implementation, and implementations details should definitely not be leaked to the client, which is all too easy with the database-driven approach. It’s also important to ask yourself if an almost raw database is the best interface you can offer your API users? I mean there is already a near-perfect language for doing CRUD operations on database tables, it’s called SQL… And you probably have some business logic on top of those tables that your API users would appreciate not having to re-implement in their own code. So how do you move beyond this database-oriented thinking and closer to a more RESTful design for your API?
Use Visual Studio 2017 to create an empty Web API project. Make sure you add unit tests to the solution. This empty solution will be used as a stub for the generated code. Step 2 Run InstantWebAPI application, select the stub Visual Studio solution file (.sln) created in first step. Using a database connection dialog create a connection string to your server. Application supports MS SQL server, Express or Azure. Once a connection is established to the database, select the tables or views for which Web API needs to created and start the code generator. Find more details at Instant Rest API from your MS SQL database.