none
What does those WCF limitation really means RRS feed

  • Question

  • Dear all,

    When implementing wcf services as part of our applciation I face to an article below describing the limitation of WCF service like :

    "By nature, WCF is method based web service and has some limitations:

    • Doesn't support method overloads
    • Doesn't have universal API
    • Service Contract depends on business requirement
    • Versioning should be on DataContract and method levels, operation name should be universal
    • Other non-.NET clients have to create as many clients as services you have"

    What does those different points really means, does some of you have experience like me as well in WCF but did not face such situation to raise this question ?

    For full article refer to this linked below :

    https://www.codeproject.com/Articles/598157/Building-SOAP-Message-Based-Web-Services-with-WCF

    regards

    Wednesday, September 19, 2018 2:53 PM

All replies

  • Hi wakefun,

    In my limited knowledge, I cannot understand what these specific limitations exactly mean. In my opinion, WCF does not support method overloading since the WCF operation name is based on WSDL, and WSDL cannot describe methods with the same name. This means that the client cannot determine which method to invoke through the WSDL (client knows the available functions exposed by the server through WSDL). But the operation name can be changed by the following method so that the method overload could be achieved.

    [OperationContract (Name = "AddInt")]

    Best Regards

    Abraham

    Friday, September 21, 2018 6:47 AM
    Moderator
  • Yeah me too I did not really understand what those limitation really means. I have never encounter limitation while using wcf sor far.

    Only tricky thing on WCF I see is the versionning issuse in case of Service evolution with new feature which would mean contract change, then the client app need to be refresshed with new contract update to avoid trouble, this is tru when using soap reference.

    But if you use that service as Rest, as it is mjore data orientated than method, revision handling is done through the uri of the service which is exppose.

    regards

    Friday, September 21, 2018 7:00 AM
  • Hi wakefun,
    I really agree with you. I think the only limitation of WCF is the difference between SOAP and Restful service. Since WebApi is a programming abstraction for WCF Rest services, Asp.net Web API is the next generation of Microsoft's service framework.
    https://docs.microsoft.com/en-us/dotnet/framework/wcf/wcf-and-aspnet-web-api
    From the current trend of SOA service design, rest-style services are the mainstream trend. 
    When we build and design the underlying services, we prioritize Restful architectures. Such as WebApi (c #), Yii2 (PHP), Jersey (Java), flask - restful (python).
    Here is a document about the Pros and Cons.
    https://msdn.microsoft.com/en-us/magazine/dd942839.aspx

    Best Regards
    Abraham

    Tuesday, September 25, 2018 2:49 AM
    Moderator