Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WCF Data Services implementation strategies

Microsoft has done a savvy job of not outlining the actual place for data services in the wonderful world of SOA/Web dev.

So my question is are WCF Data Services designed to be used via external clients? Has anyone ever heard of someone using them on the server side (i.e. data base access for web service)?

Simple scenario a general layered architecture using BO business objects (parenthesis indicate what is being passed between layers)

(XML) WCF Service -> (BO)Business Logic -> (BO) Dao -> Entity Framework

or using data services it would be where DS BO are modeled business entities to be used in data service.

(XML) WCF Service ->(BO) Business Logic -> (BO) WCF Data Service -> (DS BO)Server

I can't see a use for the later, unless there are going to be a lot of cases people would be accessing your data via your Data Service Layer vs the Service layer?

Thoughts anyone, any type of reference doc that would help back it would be useful.

I am looking for pros/cons to help other people out there like me define when/where to use data services.

like image 995
Nix Avatar asked Mar 24 '10 14:03

Nix


1 Answers

Do not do the second.

The WCF Data Services interface is based on Atom Pub, which is based on REST which is intended to be client facing.

Here is one key reason. You cannot do two-phase-commit transactions over a WCF Data Service interface and I hope the WCF team never try to enable it.

WCF Data Services is about exposing data to a remote client, not as a layer in an architecture.

like image 80
Darrel Miller Avatar answered Sep 19 '22 08:09

Darrel Miller