Suggestions regarding a few component change

Jun 16, 2014 at 8:55 AM
Edited Jun 16, 2014 at 9:50 AM
I really like the LASG and its approach and philosophy. I've been meaning to convince my team to use LASG to re-write our application, but there are a few components we'd like to swap out. Firstly we'd like to use Dapper as our prefered ORM, reason because we'd like to have our control over the SQL statements which is critical to our application performance. Secondly, we would like to write our entire UI web app using AngularJS with TypeScript as the language. All communications will happen over JSON so we'd be using WEB API, because this will be the data backend for all mobile apps as well.

Also we'd like to introduce some some IOC container and resolve the dependencies at runtime, one example would be the part in business component layer where we create the data access objects to do database operation, should be injected using constructor injection.

Though not sure, but I guess I'd have to start with MVC5-WEBAPI-EF sample as the starting point. What recommendations do you have to this kind of changes.

Thanking you for such a great tool,
Oct 23, 2014 at 3:05 AM
Hi Soham,

Any component that is not included by LASG will need to be manually added. This includes any 3rd-party frameworks or dlls.

Using AngularJS and other JS framework is possible since LASG still does not have a UI generator.

A 7th code generator that generates WEB API backend is currently in the works (although slowly due to limited time) and should provide the automation for a WEB API back-end for JS and MVC based UI.

LASG is modeled over the current architecture that I'm using for my organization and is in no-way a generic tool to fit all scenarios. As such, I've decided to drop heavy patterns such as IOC and DI from the architecture in favor of performance.

Personally, I think that if you could spare the performance hit in your application, it will be very elegant to put in stuffs like IOC, Repository and etc. Unfortunately, that's not the case for mine :(