静态验证方法WCF

时间:2013-04-13 19:06:51

标签: wcf static-methods

如果我有一些像

这样的WCF方法
GetEmployeeDetailsResponse GetEmployeeDetails(GetEmployeeDetailsRequest request)
GetCustomerDetailsResponse GetEmployeeDetails(GetCustomerDetailsRequest request)

我需要对Request对象执行输入验证,我可以使用静态方法吗? 许多验证都很常见,例如Request对象不应该为null,而员工ID /客户ID(在请求消息中)不应该是0等等。我猜测,因为Request对象本身是单独的对象,将它们传递给静态方法不应该导致任何线程安全问题。 我正在使用Per-Call服务。

谢谢你 维卡斯

1 个答案:

答案 0 :(得分:0)

是的,你可以。

但是 - 考虑一下您将验证请求#1的情况,并在请求#1之前收到请求#2 。 如果你的静态方法会对这两个请求做一些共同的事情,你会发现自己正在考虑locks,...

使用某种检查员,如IClientMessageInspector ,会更多 正确的选择 - IMO。