c# - Visual Studio项目模板,如何用项目名称替换部分文本?
问题描述
我有一个项目模板,
<v:View x:TypeArguments="local:$safeitemname$Model" x:Name="view"
x:Class="$rootnamespace$.$safeitemname$"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:v ="clr-namespace:$safeprojectname$.Visual"
xmlns:local="clr-namespace:$rootnamespace$"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
</v:View>
然而在实践中 $safeprojectname$ 并没有被替换。经过研究,我发现它仅适用于项目模板。
我尝试使用 Wizard,但是,我不知道如何使用给定的IWizard.RunStarted(Object, Dictionary<String,String>, WizardRunKind, Object[])
Method 参数获取项目名称。通过 获取它是可能的IWizard.ProjectItemFinishedGenerating(ProjectItem)
,但是在一切都完成后调用此方法。
我发现可能有用的另一件事是 Stackoverflow 中的答案,https: //stackoverflow.com/a/42138852/12463119 。不幸的是,我无法理解它,因为我不知道“dte”变量的来源。
请告诉我如何让我的模板能够捕获项目名称并自动写入生成的文件。
解决方案
推荐阅读
- c - 在 Mac OS Catalina 10.15.2 上安装 Library X11
- f# - 具有多个函数的递归 F#
- windows - 来自 docker-compose 的环境变量未传递给容器
- python - 如何在 add_widget() 中引用 id
- kubernetes - 在 kubernetes spec.template.spec.containers[1].image 上创建 Deployment YAML 时出错:必需值
- javascript - 从 Launchpad-Tile 更改颜色
- docker - Docker 卷无法与 Docker-compose 一起生成 Doxygen 文档
- javascript - 在codeigniter中上传和表单验证之前的Ajax图像预览
- node.js - 如何将数据从节点服务器传递到 ejs 标头
- html - CSS/HTML 响应式设计