Features and Functionality
The DCS Software Factory is built on the Guidance Automation Toolkit (GAT), the Guidance Automation Extensions (GAX) version 1.4, and Visual Studio Extensions technology. A default DCS Software Factory solution contains several folders that relate directly to the different DCS project types. These folders filter the Visual Studio Extensions that DCS provides, depending on the type of project that they relate to. Code generation is based on Text Transformation Template Toolkit (T4) files. For more information about T4 files, see Architecture of Text Templates and Basic Text Template Tasks.
The following table describes the structure and contents of the DCS Software Factory. (The default location for the DCS Software Factory is C:\Program Files\Microsoft CIS\DCS Business Logic Visual Studio Extensions.)
|
Folder |
Contents |
|---|---|
|
SF |
Contains XML files that specify the files that are used to create different project types. |
|
SF\templates\Projects |
Contains the .csproj file, .vstemplate file, icon file, and property files. These files are used to create the different project types. |
|
SF\templates\Solutions |
Contains a .vstemplate file and an icon file. These files are used to create a DCS solution. |
|
SF\templates\Text |
Contains T4 files for the different project types, These files are used to generate .cs files from user-supplied parameters. |
The following table shows the mapping of XML files in the SF folder to project types. These XML files specify which files are used to create different project types.
|
Project Type |
XML File |
|---|---|
|
BLCategory |
DCS_SF.xml |
|
BLSpecific |
BLSpecificBLCategoriesCommonEntities.xml BLSpecificBLCategoriesOneWayEntities.xml BLSpecificBLCategoriesSequenceWFStub.xml BLSpecificBLCategoriesStateWFStub.xml BLSpecificEvents.xml BLSpecificSequenceWFFromDll.xml BLSpecificStateWFFromDll.xml DCS_SF.xml |
|
Messages |
MessagesCommonConfig.xml MessagesCommonEntities.xml |
|
Stub |
StubBLCategoriesCommonConfig.xml StubSequenceWFFromDll.xml StubStateWFFromDll.xml |
|
Test |
DCS_SF.xml |
|
WFTask |
WFTaskWF.xml |
When a user creates a DCS solution, the SampleSolution.vstemplate XML file in the SF\templates\Solutions folder is used as a template for the solution. The vstemplate file specifies the folders that are created inside the solution (BLCategory, BLSpecific, Messages, SharedAssemblies, Stub, Tests, and WFTask), and points to the vstemplate files that are invoked when new projects of different types are created. When the user creates a new project, the vstemplate file for that project type( specified in SampleSolution.vstemplate) is invoked. It also adds the recipe references ImportProjects, ExportProjects, and AddRecipeToProject to the solution.