Immediate Rest API from your MS SQL data source? The biggest advantage of a Restful API is that you don’t have to install anything on the client side (i.e. Your app for example). No SDKs or frameworks are needed nor required. All you have to do is to make a simple HTTP request to the target API service, let the server do the precessing for you and get the result back. Suppose for example, you wanna build a Snapchat clone app. You need for that an image/video processing library, an augmented reality toolkit and an SDK for facial feature extraction. As you may notice, this is time consuming and require a lot of work integrating all the complex libraries into you program.
SOAP’s standard HTTP protocol makes it easier for it to operate across firewalls and proxies without modifications to the SOAP protocol itself. But because it uses the complex XML format, it tends to be slower compared to middleware such as ICE and COBRA. Additionally, while it’s rarely needed, some use cases require greater transactional reliability than what can be achieved with HTTP (which limits REST in this capacity). If you need ACID-compliant transactions, SOAP is the way to go. In some cases, designing SOAP services can actually be less complex compared to REST. For web services that support complex operations, requiring content and context to be maintained, designing a SOAP service requires less coding in the application layer for transactions, security, trust, and other elements.
Begin with the API User in Mind: Bestselling author and architect Sam Newman’s great book on microservices provides a powerful alternative to the database-driven approach for designing REST web services. It’s useful even if you don’t plan to use microservices. Newman suggests that you divide your application into bounded contexts (similar to business areas). Each bounded context should provide an explicit interface for those who wish to interact with it. Implementation details of the bounded context that don’t need to be exposed to the outside world are hidden behind the interface. You should use this explicit interface as the basis for your API design. Start by asking yourself what business capabilities do the API user needs, rather than what data that should be shared. In other words, ask yourself what does this bounded context do? and then ask yourself what data does it need to do that?
I see that this software is using Visual Studio 2017. Do I need a license for this product? No, as a single developer you can qualify for the free edition. You can download it from Microsoft site: Visual Studio Community 2017 I don’t have a license for Microsoft SQL Server. Do I need one? No, Microsoft provides a free download for SQL Express Edition server. You can get yours here. I see that a backup of AdventureWorks database is provided with the installation. How can I restore it on the server? In order to restore the backup file please download SSMS from this site: SQL Server Management Studio (SSMS). Once the code is generated am I able to modify it? Yes, by purchasing a license you should be able to modify the code however you see fit. See more info on Web API code generator from MS SQL.