Current Way To Override Account Views With ViewModels (Recommended)[edit source]
Create ViewModels named AccountLogin, AccountRegister, AccountManage. If these are found, we give you complete control of the login process. There is a complete merge model available at GitHub called AccountViewOverride.
AccountLogin - override login page
AccountRegister - override account register page
AccountManage - override account manage page
The common scenario of detecting deep links to ViewModels, discover authentication need, authenticate with OpenId, and then redirect back to the deeplink the user started with: Deeplink with authentication
Valid authentication types depend on whether you have added your own, but the default types are:
Facebook
Google
Microsoft
Twitter
OpenIdConnect
OAuth
ActiveDirectory
Jwt
Cookies
OLDER: Below is a the description of the original override strategy which allowed you to replace the html files for account views[edit source]
This is explained in the context of MDriven Turnkey but will follow the same pattern for other applications using MDriven.ASPNETIdentity.
Remember that the Account controller has different implementations for MVC4(.net5+) and MVC4 (framework 4.7). The override behaves the same for both controllers (AccountControllerBase and AccountControllerBaseForCore) - but views differ slightly. Using core views on Framework will probably not work well and vice versa.
The controller has been given a new string property AccountOverride. If this is assigned, all account cshtml views will be sought after first in Views/Account/EXT_AccountOverride/<AccountOverride-value>
If the sought-after UI is not found in the override position, the standard position will be used: Views/Account. This is also true if AccountOverride is null or empty.In the image above, the Login and Register have been overridden and will come into play only if the AccountController.AccountOverride == "test" (since the folder is named test).
In MDriven Turnkey, give a value to AccountController.AccountOverride by implementing a string attribute on SysSingleton:
By using different means to give value to SysSingleton.AccountOverride, you can influence what override folder of possibly many (test, consumer, admin, or whatever else) you want to show to a user interacting with any of the many views of the account controller.
To get the override UI distributed and applied to your server, we suggest you use the AssetsTK strategy.