Skip to content

Multiple client support

Aaron Hanusa edited this page Feb 4, 2021 · 10 revisions

Designing and developing your middle tier with peasy offers the beneficial side effect of being able to consume your code from virtually any .NET client. These .NET clients include WPF, Windows Forms, Windows 8.1, ASP.NET MVC, ASP.NET Web API, ASP.NET Web Forms, WCF, Windows Services, Windows Workflow Foundation, etc.

While there is not currently support for Silverlight or Universal apps, support for Universal apps is on its way!

Because ServiceBase and BusinessServiceBase implementations require the injection of data proxies, your middle tier can live in different environments, with the only difference being data store implementations.

An example of this would be exposing web services (HTTP, SOAP, etc.) (potentially with ASP.NET Web API, ServiceStack, or WCF) that consume your middle tier. Your web services could consume your middle tier and inject your service classes with a data proxy that communicates directly with a database. You might then deploy a WPF application that uses the same middle tier, only to have your service classes injected with a data proxy that is capable of communicating with your services.

In this scenario, the middle tier logic (initialization, validation and business rules, and command logic) can all be consumed by varying clients with the only difference being that each client is injected with swappable data proxy implementations.