不要接受或者返回ADO.NET DataSets和DataTables (或它们的类型安全的子类)。返回一个中立的数据形式,比如数组。
11.Suppress the generation of a generic type parameter hash code and provide a legible type name instead.
不要产生泛型类型参数的哈希值,使用一个易懂的类型名称作为替代。
Instance Management
实例管理
1.Prefer the per-call instance mode when scalability is a concern.
当考虑到可伸缩性的时候,使用Per_Call模式,单调模式。
2.If setting SessionMode.NotAllowed on the contract, always configure the service instancing mode as InstanceContextMode.PerCall.
如果在契约上设置了SessionMode.NotAllowed,通常会把服务实例模式设置为InstanceContextMode.PerCall
3.Do not mix sessionful contracts and sessionless contracts in the same service.
不要在一个服务里把会话契约和非会话契约混用。
4.Avoid a singleton unless you have a natural singleton.
避免使用单例模式,除非理所当然地应该使用单例模式。
5.Use ordered delivery with a sessionful service.
尽量在会话服务里使用顺序传递。
6.Avoid instance deactivation with a sessionful service.
避免在会话服务里停止服务实例
7.Avoid demarcating operations.
避免分布操作(比如有先后顺序的操作。)
8.With durable services, always designate a completing operation.
在持久化服务里,通常指定一个完成操作。