Skip to content

Porting From WCF RIA Services

Daniel Svensson edited this page Oct 7, 2019 · 2 revisions

Important: The content of this page is a straight copy from http://www.openriaservices.net/blog/post/The-Open-RIA-Services-Blog/1017/Porting-from-WCF-RIA-Services-to-Open-RIA-Services/ it might be slightly out of date but should probably work.

The migration assumes you are porting a Silverlight project since no other client framework is supported by WCF Ria Services.

  1. Remove all WCF RIA Services NuGet packages and DLLs. Look for DLLs with the System.ServiceModel.DomainServices and Microsoft.ServiceModel.DomainServices namespaces.
  2. Install the OpenRiaServices.Server package for all project that previously referenced System.ServiceModel.DomainServices.Server
  3. Go through the web.config and remove any references to System.ServiceModel.DomainServices and add the corresponding references to corresponding OpenRiaServices assemblies instead (Se Samples repository and Issue [#195](https://github.com/OpenRIAServices/OpenRiaServices/issues/195 for more details)
  4. If you are using Entity Framework 4 (ObjectContext), install the OpenRiaServices.EntityFramework.EF4 package.
    • The EF4 package is depreciated and will not be supported for v5 and onwards.
    • You can use nuget version 4.x.y on the server to begin, you need to migrate to EF6 to use future versions
  5. If you are using Entity Framework 5, you will need to upgrade to EF6.
  6. If you are using Entity Framework 6, install the OpenRiaServics.EntityFramework package.
  7. Install the latest OpenRiaServices.Client version 4.x.y (version 5 drops Silverlight support) package in the Silverlight projects that previously had the System.ServiceModel.DomainServices.Client DLL.
    • The OpenRiaServices.Client package includes the OpenRiaServices.Client.Core, OpenRiaServices.Silverlight.CodeGen, and OpenRiaServices.ViewModel packages in one install.
  8. Unload the Silverlight project and edit the project file.
    1. Find the LinkedServerProject tag inside the project file. Rename the tag to LinkedOpenRiaServerProject and then reload the project. Repeat for any other projects that are RIA Linked.
    2. If you are using the RiaClientUseFullTypesNames in the project file, rename it to OpenRiaClientUsefullTypesNames
    3. If you are using any other code generation setting then look at the documentation to see what the new names are
  9. Find all references to the "System.ServiceModel.DomainServices" namespace in your solution and replace them with "OpenRiaServices.DomainServices".
  10. If you are using the DomainDataSource, then remove the System.Windows.Controls.DomainServices dll and install the OpenRiaServices.Silverlight.DomainDataSource package. The namespace changes match the dll changes.