C# web服务和应用程序依赖项引用之间的命名空间差异

C# web服务和应用程序依赖项引用之间的命名空间差异,c#,web-services,namespaces,C#,Web Services,Namespaces,我有两个应用程序都引用了AppTypes.dll程序集。一个应用程序是普通的winforms应用程序,另一个是web服务 我正在将AppTypes中定义的对象传递给我的web服务,但是我得到了命名冲突,因为显然web服务在将服务添加到我的项目后也定义了这些类型。有什么方法可以修复它或解决VS的困惑,或者这是正常的吗?使用web服务代理,您可以在添加web引用时选择名称空间,或者通过wsdl.exe/namespace。但是,这些将是不同的类型,您不能将它们视为相同的类型。这通常会引起很多混乱 如

我有两个应用程序都引用了AppTypes.dll程序集。一个应用程序是普通的winforms应用程序,另一个是web服务


我正在将AppTypes中定义的对象传递给我的web服务,但是我得到了命名冲突,因为显然web服务在将服务添加到我的项目后也定义了这些类型。有什么方法可以修复它或解决VS的困惑,或者这是正常的吗?

使用web服务代理,您可以在添加web引用时选择名称空间,或者通过
wsdl.exe/namespace
。但是,这些将是不同的类型,您不能将它们视为相同的类型。这通常会引起很多混乱


如果您想共享类型,请考虑使用WCF而不是2.0风格的Web服务,这允许通过IDE,并通过<代码> SvCuTiel.Exe/引用< <代码>

< P>我可能不应该回答这篇文章,因为我不确定我是否完全理解您的问题,但有时您可以通过使用“global”指令绕过名称空间冲突,比如我怀疑的名称空间冲突

namespace Foo
{
    class Bar
    {
    }
}

namespace Bar
{
    class Foo
    {
        static void DoIt()
        {
             // Foo.Bar x1; // This wont compile.
            global::Foo.Bar x2; // This will compile.            
        }
    }
}
“global”指令指示编译器将“Foo”解析为名称空间,而不是类,从而消除命名歧义

我希望我在这里没有完全脱离主题,如果我是,很抱歉