Visual Studio C# 项目模板:$safeprojectname$ 参数

Visual Studio C# Project Template: $safeprojectname$ parameter

Visual Studio C# 项目模板:$safeprojectname$ 参数

我正在尝试创建一个项目模板,我想将一些文件名替换为 safeprojectname。

它适用于源文件,但它不适用于项目文件 (.csproj) 本身。

  <TemplateContent>    
    <Project TargetFileName="$safeprojectname$.csproj" File="$safeprojectname$.csproj" ReplaceParameters="true">      
      <Folder Name="Definition File" TargetFolderName="Definition File">
        <ProjectItem ReplaceParameters="true" TargetFileName="$safeprojectname$.txt">$safeprojectname$.txt</ProjectItem>
      </Folder> 
    <TemplateContent>

是否可以在项目文件命名中使用$safeprojectname$?

MSDN says:

safeprojectname:用户在“新建项目”对话框中提供的名称,已删除所有不安全字符和空格。

如果无法在项目名称本身中使用 $safeprojectname$,我需要知道 将删除哪些不安全字符

i need know the what are the unsafe characters that will removed

与 Path.GetInvalidFileNameChars() returns 相同。所以实际上 :\/*?"<>| 中的任何字符。请注意这些字符在命令行中使用时以及在组成完整路径名时如何执行特殊操作。让它们出现在项目文件名中会带来很多麻烦。