我想在WCF中实现函数重载,但我不允许这样做
[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json)]
branch_view[] GetBranches();
[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json)]
branch_view[] GetBranches(int pageNo , int pageSize);
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
在同一个具有相同名称的合同中不能有两个操作,QHRService.IEntityService类型中的方法GetBranches和GetBranches违反了此规则.您可以通过更改方法名称或使用OperationContractAttribute的Name属性来更改其中一个操作的名称.
为什么WCF不允许函数重载.
我可以更改名称以使我的功能工作,但任何原因?
任何帮助表示赞赏
WCF被设计为一个完全通用的通信框架 - 这意味着客户端可能不是基于.NET的,因此可能对方法重载没有任何了解.
有一些功能可用于具有相同名称的方法,但是可靠地工作是一种痛苦; 我强烈建议只是咬住子弹并使用不同的方法名称,即使它感觉"错误".
| 归档时间: |
|
| 查看次数: |
2240 次 |
| 最近记录: |