0
votes

We need to get rid of Silverlight for our business application and use WPF instead.

Our current project architecture :

  • Entity Framework 6 (Code First)
  • A Silverlight client application (communicating with hardware)
  • Open Ria Services (used by the Silverlight application)
  • A WCF Service (SOAP) for 3rd party systems integration

Each customer has the application hosted on their own server with IIS.

What is the best way to do it using the last Microsoft technologies ? First ideas :

  • Replace Silverlight with a WPF application, with ClickOnce for easy install and auto update
  • A unique new API project (Rest? ASP.NET Core ?) used by both WPF application and 3rd party systems for CRUD operations and all the Business Logic...

What are the best practices to consume web services with WPF ? Should we still use RIA Services ?

1

1 Answers

0
votes

A lot depends on what your business need is but my advice is to be future proof and refactor where needed or deemed necessary.

I would convert to an Universal Windows Application (VS project type) that can hook up with Xamarin if you would need to support mobile applications later on. This way your set for a long time and can reach platform independence for your client side in the future.

About converting your existing client:

Converting your Silverlight code to WPF will seem fairly easy. At the end it's c# and xaml. Most things will be changing some namespaces and references etc.

You can leave your WCF RIA Service as it also can be used in WPF. I would just extend your service with WCF, WebAPI or ... Which one to choose depends again an a lot of factors. Same counts for which ORM wrapper you use every wrapper has it's pro's and cons;

A starting point can be this article: http://www.codefoster.com/webservicesforward/