【发布时间】:2017-05-25 02:25:29
【问题描述】:
我想创建一个 NuGet 包,根据项目名称将文件添加到项目中。
例如,如果我有一个名为“ProjectABC”的项目并且我导入了这个 NuGet 包,我希望它添加以下文件夹/文件结构:
/Schemas
/Schemas/ProjectABC.cs
ProjectABC.cs
我还想修改 .cs 文件中的命名空间以匹配项目名称:
namespace ProjectABC.Class1
这可能吗?
【问题讨论】:
我想创建一个 NuGet 包,根据项目名称将文件添加到项目中。
例如,如果我有一个名为“ProjectABC”的项目并且我导入了这个 NuGet 包,我希望它添加以下文件夹/文件结构:
/Schemas
/Schemas/ProjectABC.cs
ProjectABC.cs
我还想修改 .cs 文件中的命名空间以匹配项目名称:
namespace ProjectABC.Class1
这可能吗?
【问题讨论】:
是的,这是可能的。我的建议是让你看看one existing package 做那种操作。特别是,查看该包中包含的install.ps1 和vs.psm1 powershell 脚本,了解它们如何将文件添加到当前项目。 “vs”文件包含一些实用函数,基于 ENVDTE 来自动化 Visual Studio。另一个有趣的资源可以找到here。
对于命名空间部分,您可能必须依赖安装脚本中的 T4 templating 和 trigger a .cs file generation。
【讨论】: