C# 单个ServiceContract中同名OperationContract的不同命名参数?
我需要稍微修改我的WCF服务中的一个操作合同 我已经做过的(只是一个简单的例子) 但是我需要一个单独的例子,将一个参数名更改为另一个参数名,这样整个接口除了那个单独的更改外看起来都一样C# 单个ServiceContract中同名OperationContract的不同命名参数?,c#,wcf,service,C#,Wcf,Service,我需要稍微修改我的WCF服务中的一个操作合同 我已经做过的(只是一个简单的例子) 但是我需要一个单独的例子,将一个参数名更改为另一个参数名,这样整个接口除了那个单独的更改外看起来都一样 [ServiceContract] public interface IWCF { [OperationContract] void GetMessage(string a, string THIS_NAME_HAS_CHANGED, string c); [OperationContract] void Ge
[ServiceContract]
public interface IWCF
{
[OperationContract]
void GetMessage(string a, string THIS_NAME_HAS_CHANGED, string c);
[OperationContract]
void GetData(string a, string b, string c);
}
这是因为我的一个端点将只接受旧名称,而所有其他端点将接受新名称。我希望将此作为我的应用程序模块的一部分来完成,但在找到解决方案后,我将自己处理此问题,因此无需在此处发布该部分代码。让您的服务实现/公开两个接口(当然命名不同,以满足C语言规则;可能使用
[ServiceContract(Name=”“)]
向外部公开不同的名称):具有旧参数名称的名称和具有新参数名称的名称。绑定两个不同的端点。给“旧客户端”一个端点,给其他端点另一个端点。问题是我不能向外部公开不同的名称。在这两种情况下,名称必须相同,唯一可以而且必须更改的是该精确公开的OperationContract中的参数名称。另一端的ServiceDefinition必须保持不变,并且在更改之前符合此\u NAME \u HAS \u CHANGED参数。它无法升级。
[ServiceContract]
public interface IWCF
{
[OperationContract]
void GetMessage(string a, string THIS_NAME_HAS_CHANGED, string c);
[OperationContract]
void GetData(string a, string b, string c);
}