【发布时间】:2013-03-07 10:05:25
【问题描述】:
我有两个名为
的方法[OperationContract]
UserAccount GetUser(Int32 id);
[OperationContract]
UserAccount GetUser(string username, string password);
当我尝试构建它们时,他们说您不能在服务中使用同名方法?是吗。
【问题讨论】:
-
注意:Polymorphism 与重载不同。此外,请在问题中包含确切错误消息,因为它使它们更易于搜索(如果有人搜索所述错误消息)。
-
重载是多态的一种实现。多态是一个抽象的概念。
-
重载与多态正交,并且存在于一些不支持[subtype]多态的语言中。在某些支持 [subtype] 多态性的语言中也没有重载。覆盖通常与 [subtype] 多态性相关,但我离题了..
-
重载是实现多态性的实用方法,我相信......无论如何它有两种方式到达一个目的地:p
-
没有。 Overloading 不与多态性有关:“方法重载不应与 [..] 多态性混淆在运行时选择正确的方法,例如通过虚函数,而不是静态的。”
标签: wcf overloading