1.对Interface而不是Class应用[ServiceContract]的属性
2.Service Contract增加前缀I. public interface IMyContract {}
3.Service Contract避免提供这样的“Property-like Operation”,比如:GetName(), SetName()。
应该尽可能的是"DoSomething()"。Client不需要知道Service的状态以及任何属性
4.一个Service Contract包括3-5个Operation Contract,太多(>20)或者太少(=1)都不好