将 OperationContract 中的参数更改为等效的 Nullable<T> 是否被视为重大更改?
Is changing a parameter in a OperationContract to it's Nullable<T> equivalent considered a breaking change?
考虑以下 ServiceContract
-接口:
[ServiceContract]
public interface ITest
{
[OperationContract]
void MyMethod(int a, int b);
}
现在我们将其更改为以下内容(有效地将参数 int a
更改为 int? a
):
[ServiceContract]
public interface ITest
{
[OperationContract]
void MyMethod(int? a, int b);
}
使用此 WCF 服务的客户端是否需要进行其他更改才能使用新服务定义?
我终于有时间测试所有内容并找出我自己的答案。
它不是以下框架的重大更改:
- .NET(C#,4.5)
- Java 8
我没有测试任何其他东西,因为它对我们的场景无关紧要。
这意味着即使在更新 Web 服务定义之后,每个客户端仍然可以工作(无需重新生成客户端)
考虑以下 ServiceContract
-接口:
[ServiceContract]
public interface ITest
{
[OperationContract]
void MyMethod(int a, int b);
}
现在我们将其更改为以下内容(有效地将参数 int a
更改为 int? a
):
[ServiceContract]
public interface ITest
{
[OperationContract]
void MyMethod(int? a, int b);
}
使用此 WCF 服务的客户端是否需要进行其他更改才能使用新服务定义?
我终于有时间测试所有内容并找出我自己的答案。
它不是以下框架的重大更改:
- .NET(C#,4.5)
- Java 8
我没有测试任何其他东西,因为它对我们的场景无关紧要。
这意味着即使在更新 Web 服务定义之后,每个客户端仍然可以工作(无需重新生成客户端)