【问题标题】:Changing the namespace for a Web Reference in a Project to be Made Into a VS Project Template将项目中 Web 引用的命名空间更改为 VS 项目模板
【发布时间】:2010-03-14 06:09:56
【问题描述】:

当我向项目添加 Web 引用时,它会出现一个默认命名空间:com.wpdevs.myservice。这是我希望它在应用程序中使用的命名空间。

当我在项目中添加using语句时,我必须添加:

using MyProject.com.wpdevs.myservice;

我想找到一种方法来避免在 using 语句中引用项目名称。我现在正在组合的项目注定要转换为 VS Project 模板,并且在那里有一个相当奇怪的引用,甚至有一个每个项目的引用,这不是我希望在项目中拥有的东西。

【问题讨论】:

    标签: visual-studio-2008 namespaces vsx web-reference


    【解决方案1】:

    添加 Web 引用时,您可以选择命名空间,但它将与项目的默认命名空间相关。我不知道有什么办法可以改变它。

    OTOH,您可以尝试使用 WSDL.EXE 程序来生成您的代理类。这接受一个/namespace 开关,允许您为代理类设置完整的命名空间。

    我必须知道您对项目模板做了什么才能知道如何帮助您。


    我根据您对项目模板的评价进行猜测。在创建模板时,您从一个名为“MyProject”的项目开始。当您向该项目添加 Web 引用时,使用的命名空间是“MyProject.something”。您希望从此模板创建的项目中使用的命名空间为“某物”。

    虽然编辑生成的代码通常不是一个好主意,但在这种情况下,您可以摆脱它。编辑您的 Reference.cs 并手动将命名空间更改为“某物”。然后,您将该文件包含到项目模板中。使用此模板创建的项目将在“something”命名空间中有一个 Web 引用。

    【讨论】:

    • 模板本质上是一个空白的启动项目,其中预建了大量可重用的代码/功能。我的团队构建了许多基于 Web 的小型一次性工具,供公司内部使用。旧项目“模板”是一项复制和粘贴工作,多年来引起了很多头痛。 Web 参考用于模板的一些常用服务,以及以后的完整项目将使用。
    • 编辑生成的文件正是我阅读您的第一个建议后所做的。想如果您可以使用参数更改名称空间,它也必须是可编辑的。奇迹般有效。谢谢!
    猜你喜欢
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-15
    • 2012-11-28
    相关资源
    最近更新 更多