
WCF
文章平均质量分 71
kissjob
这个作者很懒,什么都没留下…
展开
-
Programming WCF Services - Transactions
1.分布式Transaction地实现需要Two-phase commit protocol 和 负责管理Transaction的第三方的Transaction Manager。2Transaction 的Reliable和TransactionFlow设置 transactionFlow = "true">原创 2009-07-18 20:23:00 · 385 阅读 · 0 评论 -
WCF Coding Standards - Operations and Calls
1.one-way不等于异步操作,并发操作2.确保one-way设置为Reliablity.3.避免把one-way应用在Per-Session上,应该在per-call or singleton.如果非要在Per-Session上设置one-way,应该确保这是最后一个操作(IsTerminate=True)[ServiceContract(SessionMode=Ses原创 2009-07-11 21:18:00 · 376 阅读 · 0 评论 -
WCF Coding Standards - Instance Management
1..基于性能的考虑,优先使用Per-Call2.避免Per-Session,Singleton3.如果用Per-Session的话,则在Contract上设置[OperationContract(SessionMode=SessionMode.Required)]4.如果用Per-Call,则在Contract设置[OperationContract(SessionMode=Se原创 2009-07-02 11:01:00 · 438 阅读 · 0 评论 -
WCF Coding Standards - ServiceContract
1.对Interface而不是Class应用[ServiceContract]的属性2.Service Contract增加前缀I. public interface IMyContract {}3.Service Contract避免提供这样的“Property-like Operation”,比如:GetName(), SetName()。应该尽可能的是"DoSomething()原创 2009-06-27 14:58:00 · 430 阅读 · 0 评论 -
WCF Coding Standards - Data Contract
1.[DataMember]的属性应该在Public Property或者Read-only Public member.避免作用在Private Member。2.避免用XML来序列化3.对[DataMember]使用Order Property,对于Same Level Member定义相同的Order4.避免把Delegate/Event定义为[DataMember]5.原创 2009-06-29 15:20:00 · 413 阅读 · 0 评论 -
WCF Coding Standards - Essentials
1.Service实现应该用Class Library2.不要给Service提供任何的Parameterized Construtors3.Service/Client配置文件要给用到Binding增加reliable设置4.给Contract指定有意义的Namespace,比如:[ServiceContract(Namespace = "http://www.idesign.n原创 2009-06-27 14:35:00 · 473 阅读 · 0 评论 -
Programming WCF Services- Instance Management
根据性能的要求,WCF提供了3种Service Instance的管理方式1.Per-Call Service:客户端每次调用Function时,生成一个新的实例(意味着构造函数每次都回调用),当结束调用时,自动释放这个实例(调用Dispose,释放资源)。服务端设置:[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerC原创 2009-06-20 14:24:00 · 554 阅读 · 0 评论 -
Programming WCF Services - Operation
1.默认的方式为请求Request-应答Reply的方式。2.One-Way方式。没有返回值(只能是void),不需要Client关心调用结果的成功/失败。但是不等于异步。原因:当Client 发出多个One-Way Call,如果来不及处理的话,WCF将放入Queue,一旦QUEUE的长度超过Threshhold,Client将会Blocked.[ServiceContract]原创 2009-06-22 21:47:00 · 477 阅读 · 0 评论 -
Programming WCF Services - Data Contract
1序列化,对于WCF来说,为了区别于.NET(SOAP/Binary Formatter)和不同平台通用,用的是XML方式。序列化是对整个Class成员进行的,而Data Contract可以显式的定义需要Contract的成员(不是全部,[DataContract],[DataMember])。2.客户端进行Import Data Contract之后,自动对[DataMember]产生原创 2009-06-17 23:11:00 · 553 阅读 · 0 评论 -
Programming WCF Services- 接口Contract
1.一个Service的Operation Contract可以重载Overloading,但是需要添加不同的Name来区别.比如:[Service Contract]interface IClalut{ [Operation Contract (Name="AddInt")] int Add(int a, int b); [Operation Cont原创 2009-06-13 16:04:00 · 542 阅读 · 0 评论 -
Programming WCF Services- WCF 基本概念
1.WCF 替代Web Service/Remoting/DCom的SOA.2.Process->App Domain(0 or *)->Context(0 or *)->Service Instance(0 or 1). Client->Proxy->Service.3.Address:TCP,HTTP,Named Pipe,MSMQ, Peer Network. (http://l原创 2009-06-08 15:34:00 · 548 阅读 · 0 评论 -
Queued Services
1.Queue Contract: [OperationContract(IsOneWay = true)]2.Configuration of DisableSecurity(同时设置MEX): address="net.msmq://localhost/private/ClassA_SendMail"原创 2009-07-28 14:14:00 · 468 阅读 · 0 评论 -
WCF Coding Standards - Transactions
1.避免直接用Ado.NET Transaction针对WCF编程2.TransactionFlow应该设置在Contract而不是Service3.Service Operation实现中,避免进行Exception捕获,然后手动Rollback Transaction.//Avoid:[OperationBehavior(TransactionScopeRequired = t原创 2009-07-18 20:49:00 · 365 阅读 · 0 评论 -
WCF Concurrency (Single, Multiple and Reentrant) and Throttling
<br />http://www.codeproject.com/KB/WCF/WCFConcurrency.aspx<br /> WCF Concurrency (Single, Multiple and Reentrant) and Throttling WCF Concurrency (Single, Multiple and Reentrant) and Throttling<br />Introduction and Goal <br />Pre-requisite <br />Why do we转载 2010-06-28 09:49:00 · 1146 阅读 · 0 评论