【发布时间】:2012-10-07 14:42:44
【问题描述】:
我一直在修改 VS 2010 模板。到目前为止,我能够从我的模板创建一个 vb.net 类库项目。
但是,有一件小事困扰着我。
在我的项目模板中,默认程序集名称与默认文件名相同。我已将根命名空间留空。
但是当我从模板创建一个新项目时,VS 2010 会自动使用与我的程序集名称相同的名称填充根命名空间。
我的程序集名称和根命名空间的模板项目 (vbproj) 如下所示:
<AssemblyName>$safeprojectname$</AssemblyName>
<!-- RootNameSpace should always be empty. -->
<RootNamespace></RootNamespace>
但如前所述,当我将其留空时,它总是会被程序集名称覆盖。 即使我创建了一个带有空字符串作为值的自定义参数来替换根命名空间,它仍然会被覆盖。
感谢任何帮助。
【问题讨论】:
-
现在可以用VS 2012了吗?看起来在 2012 年,您可以直接在“全局”下方定义命名空间,而无需空白根命名空间:[链接]blogs.msdn.com/b/vbteam/archive/2011/09/27/…。显然这不是您所要求的,但它可能是一种解决方法。
-
我用的是VS 2012,你说得对,亚伯拉罕,你可以在'Global'下面定义命名空间。
-
@Wietze Veld:你永远不能让你的命名空间为空。您计划何时更改/更新命名空间名称。你有一个向导扩展来弹出一些东西,从用户那里获取命名空间吗?
-
感谢您的回答。对不起,我从来没有回复过你(那是一段时间了:))。 @WIH,我们曾经手动执行此操作,但是,我的问题是如何以编程方式执行此操作。我们手动清除根命名空间并在类文件本身中设置命名空间,这允许在一个程序集中有多个命名空间。当我们介绍模板时,我想实现同样的目标。
标签: vb.net visual-studio templates