diff options
Diffstat (limited to 'Software/Visual_Studio/Tango.CodeGeneration')
4 files changed, 61 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.CodeGeneration/EnumerationField.cs b/Software/Visual_Studio/Tango.CodeGeneration/EnumerationField.cs new file mode 100644 index 000000000..f8bb98b9b --- /dev/null +++ b/Software/Visual_Studio/Tango.CodeGeneration/EnumerationField.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.CodeGeneration +{ + public class EnumerationField + { + public String Name { get; set; } + public int Value { get; set; } + public String Description { get; set; } + } +} diff --git a/Software/Visual_Studio/Tango.CodeGeneration/EnumerationFile.cs b/Software/Visual_Studio/Tango.CodeGeneration/EnumerationFile.cs new file mode 100644 index 000000000..e49b7fa48 --- /dev/null +++ b/Software/Visual_Studio/Tango.CodeGeneration/EnumerationFile.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.CodeGeneration +{ + public class EnumerationFile : CodeFile + { + public String Name { get; set; } + + public List<EnumerationField> Fields { get; set; } + + public EnumerationFile() + { + Fields = new List<EnumerationField>(); + } + } +} diff --git a/Software/Visual_Studio/Tango.CodeGeneration/Tango.CodeGeneration.csproj b/Software/Visual_Studio/Tango.CodeGeneration/Tango.CodeGeneration.csproj index e9f1fd586..e2cc941e7 100644 --- a/Software/Visual_Studio/Tango.CodeGeneration/Tango.CodeGeneration.csproj +++ b/Software/Visual_Studio/Tango.CodeGeneration/Tango.CodeGeneration.csproj @@ -65,6 +65,8 @@ <Compile Include="CodeObject.cs" /> <Compile Include="DpProperty.cs" /> <Compile Include="EntityCodeFile.cs" /> + <Compile Include="EnumerationField.cs" /> + <Compile Include="EnumerationFile.cs" /> <Compile Include="Helper.cs" /> <Compile Include="ICodeObject.cs" /> <Compile Include="Method.cs" /> @@ -93,6 +95,7 @@ <None Include="packages.config" /> <EmbeddedResource Include="Templates\Namespace.cshtml" /> <EmbeddedResource Include="Templates\EntityCodeFile.cshtml" /> + <EmbeddedResource Include="Templates\EnumerationFile.cshtml" /> </ItemGroup> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <!-- To modify your build process, add your task inside one of the targets below and uncomment it. diff --git a/Software/Visual_Studio/Tango.CodeGeneration/Templates/EnumerationFile.cshtml b/Software/Visual_Studio/Tango.CodeGeneration/Templates/EnumerationFile.cshtml new file mode 100644 index 000000000..408c9b3d5 --- /dev/null +++ b/Software/Visual_Studio/Tango.CodeGeneration/Templates/EnumerationFile.cshtml @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.ComponentModel; + +namespace Tango.DAL.Observables +{ + public enum @(Model.Name) + { + @foreach (var prop in Model.Fields) + { + <div> + /// <summary> + /// (@prop.Description) + /// </summary> + [Description("@(prop.Description)")] + @(prop.Name) = @(prop.Value), + + </div> + } + } +} |
