Project Description
Contains T4 templates and empty classes/interfaces to be used with the UML modelling tools in VS Ultimate for creating Domain models for Domain Driven Design.

The T4 templates in this project are all extensions of the original T4 templates created by Microsoft and need to be place site by site with the original ones in %VISUAL_STUDIO_INSTALL_FOLDER%\Common7\IDE\Extensions\Microsoft\Architecture Tools\Extensibility\Templates\Text.

The extensions are written to solve a few things which annoyed me when starting using the modelling tools of Visual Studio for a Domain Driven project. The extensions use the DDD UML Stereotypes by Toby Couchman to predefine inheritance depending on the DDD role of the interface. Finally it also uses the root package namespace as the root namespace for all generated classes and interfaces.


How to use
Include the IRepository interface, EntityBase class and ValueBase class into your project. Design a UML Class diagram in a modelling project and use the entity stereotype to identify your aggregate roots and the valueObject stereotype to identify the children of the aggregate roots.

Furthermore if you mark an interface as a repository the generated C# interface will implement the IRepository interface. The generic type of the interface will be identified by the name of the interface. For instance the name IUserRepository will implement IRepository<User>.

Last edited Apr 7, 2013 at 6:52 PM by Thoha, version 2