Why WCF RIA Service ?
It is said that, “If you want to have better understanding on a technology; first find why you need that technology? “ And to adhering above saying, we will start our journey of WCF RIA learning with a discussion on “Why WCF RIA Service? “
Most developers are very much accustomed to work with layered architectures. Usually there are three layers;
It is presentation layer talks to business layer and yield UI output to the client. In normal web application UI output at the client talks to presentation layer over Internet. There is extremely close proximity between presentation layer and business layer and so in between business layer and data layer. Somehow UI rendered at client side does not contain any business specific code and takes instruction from presentation layer and render the html output.
When you use Silverlight to create N-tier Rich Internet Application, presentation layer reside at the client side and it talks to middle layer over the Internet.
In Silverlight application portion of business logic such as validations may reside at middle layer and presentation layer or may be at both layers. In most of the time business logic to and fro in between middle layer and presentation layer
There are astronomical amount of data and many business logics involved in creation of large line of business application. There are many clients pulling and pushing data to the server, authorizing and authenticating with server, validating users and data in the server and to accommodate all these as a developer you will have to write complex services and plug them with the clients. Majority of development time goes in creation of service, managing service, configuring endpoints and then working with proxies at the client side. Imaging if all service related work is being automated then as a developer you could give all your time to application logic. WCF RIA Service does the work of automation for you.
To create powerful Silverlight line of business application, application logic must be shared in between middle layer and presentation layer. WCF RIA Service does this for you without duplicating the code in both layers.
WCF RIA Service shares application logic between view [Presentation layer] and data access layer within a trust boundary. WCF RIA Service eliminates WCF or web service to share the application logic between the layers over Internet. WCF RIA Service acts as a plug in between presentation layer and middle layer. It creates a programming view between these layers to work with application logic.
As name suggests WCF RIA Service is based on WCF Service. It abstracts many complexity of WCF Service from you to focus on business or application logic. However it does not restricts you to use powerful features of WCF in your line of business Silverlight application.
We can summarize now that why we need WCF RIA Service as
- It helps line of business application to connect with data and of course without writing WCF or Web services.
- It helps application logic to be shared in between entities residing in both presentation layer at the client and middle layer at the server and of course without duplicating application logic code.
- It helps in tracking changes in entities at both sides.
- It helps in avoiding creation of complex services, management of endpoints and proxy management at client side while connecting data from client in rich line of business application.
With hope I am concluding day 1 that you have an understanding on WCF RIA Service. And even if you have some doubt let us directly jump to the code and create a basic application on day 2 and see if you are still having doubt in your mind. See at day 2