【发布时间】:2013-10-22 06:47:39
【问题描述】:
我在 Web 服务中有一个类,其中有一个嵌套类。
namespace MyWS
{
// web service class with web methods etc. here
public class SomeClass
{
// fields, properties, stuff etc.
public class NestedClass
{
// ...
}
}
}
当我尝试从 Web 服务中创建 Web 引用时,NestedClass 不再嵌套,并且作为引用中的独立类位于 SomeClass 之外(通过 MyWS.NestedClass 访问)。下次生成网络引用时,有什么方法可以强制它保持嵌套?也许是某种属性?
我正在使用 .NET 2.0 和 VS 2005,如果有什么不同的话。如果可能,请不要建议升级到更新的技术/环境作为解决方案。
编辑:这不是架构问题。我真的不需要将类嵌套在那里,我可以很容易地改变它,所以它更有意义。我只是想知道如果我愿意,是否可以强制它嵌套在引用中。
【问题讨论】:
-
出于好奇,为什么要嵌套一个公共类?我原以为嵌套类的存在主要是为包含类提供一些额外的内部功能。另外,您是否尝试过将内部类修饰符更改为
Private(除非您绝对需要它是公开的)?我不知道这是否会有所作为,但可能值得一试。在这种情况下,也许它必须被编译为一个单独的类.. -
@Kjartan 我根本不需要嵌套它。当你遇到一些你没有预料到的事情,然后你想知道它为什么会发生,以及是否有可能强迫你做出你期望的行为时,这更像是一种情况。我想我应该首先在问题中说明。
标签: c# web-services .net-2.0 nested-class web-reference