## EmployeeManagement Demo Application
This repository contains a multi-layer application which was built for demonstration purposes.
It contains a collection of patterns and services which are used in enterprise applications.
– Layered architecture
– Dependency injection using AutoFac
– Test-driven design
– EntityFramework code-first database context
– UnitOfWork and repository pattern
– Restful WCF service with JSON
– Diverse client technologies. Using DTOs to exchange information with the backend and ViewModels (MVVM) to bind model data to views.
Furthermore, the aim of this project was to show the interplay of the mentioned technologies, principles and practices.
### Missing points
– Authentication and authorization
– Cross-platform mobile clients
– Input validation
– Filtering, grouping, sorting, paging of list items
### Helpful links
Generic repository pattern, unit of work, entity framework in MVC
Autofac for MVC
Autofac for WebApi
Using Web API 2 with Entity Framework 6
Dependency Injection in ASP.NET Web API 2
Exception Handling in ASP.NET Web API
Automated Testing of ASP.NET Web API and MVC applications
Creating WCF REST services
Using MVVMLight in a WPF application
Configuring Relationships with the Fluent API
ASP.NET Web API Exception Handling
Exception Handling in WebAPI
Consuming WCF Services in Xamarin
Custom WCF message formatters (NewtonsoftJsonBehavior)