Switching between WCF Service and Business Layer RRS feed

  • Question

  • My proposed application is a ASP.NET Web Forms application.  My project has got UI Layer->BusinessLayer->DataAccessLayer.  As this might go for distributed scenario in feature, we want to have WCF Service Layer between UI & BL.  UI->SL->Bl->DL.  The requirement is to switch beween WCF & Business Layer from the UI Layer which should be abstracted from calling WCF/BL.  I am looking for some reference/guidance
    Friday, July 20, 2012 5:18 PM

All replies

  • What you could do is you can have a domain service layer in between. This layer stays in between UI and business layer. Layer decides where you want to switch to (WCF or BL). So you will have the following setup

    UI --> DSL --> SL or BL --> DL



    Monday, July 23, 2012 5:59 AM
  • Hi,

    SOA definitely has its advantage in scalable and reusable aspects. But converting non SOA application to SOA is not simply adding a wrapper service layer. Need to consider appropriate degree of abstraction and coarse grained  to avoid chatty interfaces. But if your UI is chatty type and service is coarse grained you may draw more than you required, In that case it not only a service layer, but at the there may be more presentation layer which sync with the service front  and may be with a cache maintenance. Think about the trade offs before implementing the service layer.

    Good Luck!

    Monday, July 23, 2012 7:32 PM
  • I don't really understand the question. Whilst I agree with what Albin says, I'm not sure the question is about moving to SOA but rather allowing an RPC call to another machine?? Hence I'm confused, what is the question? If you do not choose to use WCF for your communication what are you using to talk to the Business Layer? I assume the question is actually about hosting all the layers in a single tier and then use WCF to allow for a mechanism to move one or more layers to different tiers and therefore require cross machine communication? Or have I misunderstood the whole thing? :)

    Monday, July 30, 2012 3:50 PM