Visual Studio project template for Web Api .NET Core solutions 3.1
This Visual Studio extension provides an effective and quick start for .NET Core REST Web API service and saves many hours of exploring the Web for an optimal solution. Save your precious time with this template, click, build and enjoy your life!
More information and detailed instructions here: www.anasoft.net/apincore
Three steps only to create fully functional REST API:
- install the extension,
- update API appsettings.json with Data Source if not SQLEXPRESS and
- run created solution/service which initiates migration/seed services to get the API service info page
In extended vsix version additionally you can:
- run successfully default scaffold tests in XUnit integration tests project,
- test API with Swagger API specification link on API service info page using test credentials email@example.com mysecretpassword123 to get security token,
- extend and customize you API solution by using T4 templates to scaffold 600+ lines of code (for api, controler, domain and test layers) per added entity class; just compile your solution, add new db migration and run successfully T4 generated tests,
- import to Postman generated API tests as json file and
- have stored procedure implementation example
Core features version
- Three layers projects Api, Domain and Entity
- Dependency Injection (.Net Core feature)
- Generic Service
- Generic Repository with Entity Framework
- EF lazy loading and DB concurrency errors
- Sync and Async calls
- Generic exception handler
- Serilog logging with Console and File sinks
- Migrations and seed from json objects build your empty database
- JWT authorization/authentication for generated API
- T4 templates - simple code generation for domain and service classes
Extended features version
- All core features included.
- Swagger and Swashbuckle API documentation for .NET Core and Swagger authentication
- Select between Indentity Server 4 or JWT authorization/authentication for generated API
- T4 templates - smart code generation driven by existing entity classes (inherits from BaseEntity). T4 templates generate code for related domain, service, controller and test classes based on added entity classes in single click. Great time saver!
- XUnit integration tests project added to the solution for IS4 mode or JWT authentication mode.
- Postman API tests as json file for import (IS4 and JWT tests). Import json and run the tests.
- Stored procedure example added to repository
Only four simple steps to extend original solution with your new entity and all the plumbing necessary for an REST API:
- add entity class(es),
- run Powershell module to run T4 scripts and generate/scaffold all layers' code,
- add new database migration to update a database and
- run all tests
- Version 4.1 (Initial)
- Version 4.2 (Added a service API versioning library for Microsoft ASP.NET Core and Swagger versioning)
- Version 4.3 (Added CodeGeneratorUtility.bat to execute all T4s)
- Version 4.4 (Update to .NET Core 3.1 - LTS version )
- Version 4.5 (Automapper v.9.0 with DI)
- Version 4.6 (EF add migration fix)
- Version 4.7 (updated to Swashbuckle.AspNetCore Version=5.0.0)
- Version 4.8 (added stored procedure example) (only extended version)
For instructions and more about free and full-featured VSIX extension visit: www.anasoft.net/apincore
More extensions with more features:
Please give us your rating and ask for more features.
Note that there is no restriction to use, copy, modify, and distribute software created with this Visual Studio extension template.
Created solution using this template may contain code with unintentional flaws or limitations. Please adjust created solution to your needs and test it before any production use.
IN NO EVENT SHALL OWNER OF THIS EXTENSION BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE OWNER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.