最近开发ABP项目,发现针对实体的维护界面基本都是雷同的:一个列表页面、一个增加页面、一个编辑页面,还有一个js文件,重复创建这些文件费时费力又容易出错,于是想到创建一个Visual Stuido的项模板,可以向项目中增加这些界面。希望在创建项时输入实体名,然后以实体名作为子目录名,在子目录下创建Index.cshtml、CreateModal.cshtml、EditModal.cshtml和Index.js。模板定义文件MyTemplate.vstemplate如下:
<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
<TemplateData>
<DefaultName>EntityName</DefaultName>
<Name>Abp Web模块实体列表和编辑页面模板</Name>
<Description>Abp Web模块实体列表和编辑页面模板</Description>
<ProjectType>CSharp</ProjectType>
<SortOrder>10</SortOrder>
<Icon>__TemplateIcon.ico</Icon>
<TemplateGroupID>AspNetCore</TemplateGroupID>
</TemplateData>
<TemplateContent>
<References>
<Reference>
<Assembly>Microsoft.CSharp</Assembly>
</Reference>
</References>
<ProjectItem SubType="" TargetFileName="$fileinputname$/CreateModal.cshtml" ReplaceParameters="true">CreateModal.cshtml</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$/CreateModal.cshtml.cs" ReplaceParameters="true">CreateModal.cshtml.cs</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$/EditModal.cshtml" ReplaceParameters="true">EditModal.cshtml</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$/EditModal.cshtml.cs" ReplaceParameters="true">EditModal.cshtml.cs</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$/IndexModal.cshtml" ReplaceParameters="true">IndexModal.cshtml</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$/IndexModal.cshtml.cs" ReplaceParameters="true">IndexModal.cshtml.cs</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$/Index.js" ReplaceParameters="true">Index.js</ProjectItem>
</TemplateContent>
</VSTemplate>
添加时界面是这样的:
图片.png
网友评论