(*) NOTE: We moved the final eBook-Guide download from this page to MSDN. You can download it from here: http://msdn.microsoft.com/es-es/architecture/en
Required Software (Microsoft Base Software needed for Development environment)
- Visual Studio 2010 RTM & .NET 4.0 RTM (Final Versions)
- Expression Blend 4
- SQL Server 2008 R2 Express/Standard/Enterprise
- Unity Application Block 2.0 - Published May 5th 2010
- PEX & MOLES 0.94.51023.0, 29/Oct/2010 - Visual Studio 2010 Power Tools
- Silverlight 4 Tools for Visual Studio 2010
- Silverlight 4.0 Toolkit (Apr. 15 2010)
- Windows Server AppFabric (Optional: Just for our Windows Server AppFabric version/flavour )
- Windows Azure SDK and Windows Azure Tools for Microsoft Visual Studio (November 2010) (Optional: Just for our Azure version/flavour )
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=7a1089b6-4050-4307-86c4-9dadaa5ed018Technologies Changes in V.1.0
- Added ASP.NET MVC Client
- Version/Flavour for Windows Azure
- Version/Flavour for Windows Server AppFabric (Cache & hosting)
- Compatible with PEX & MOLES V. 0.94
Application Layer Services
Main refactoring was changing position of Services who have not really domain/business logic but are just coordinating Repositories & UoW. Because thoses tasks are really kind of 'plumbing' (application coordination) and something you wouldn't talk with a Domain Expert, those Services should be part of the Application Layer better than the Domain Layer. So now, our Domain Layer has pure Domain Logic in Domain Services and Domain Entities which also have some domain logic within the entities' classes themselves (Avoiding the 'Anemic Domain').
How To Setup this project in VS.2010:
After installing ALL pre-required software, do the following steps
- Create an empty SQL Server 2008 or SQL 2008 R2 DataBase called NLayerApp
(conn-string is currently using SQL Server 2008 EXPRESS, like .\SQLEXPRESS)
- Select the WPF, SL4.0 or ASP.NET MVC project as 'Default project' for debugging.
- Depending on what you want to execute (Repositories working against the real DB or against an in-memory 'EF-MOCK' we have
), you can change it using just a Web.config property
in the WCF WebSite project
key="defaultIoCContainer" value="RealAppContext" will run against the Database
key="defaultIoCContainer" value="FakeAppContex" will run against in-memory EF-Context fake
: The DATABASE project will deploy/generate db schema & execute the sql script called "Script.PostDeployment.sql". All these will create the tables and data needed by the app. Take into account that this script will be executed in every app's execution, so, all data will be cleaned up, for testing purposes, etc. It you do not want this, just comment the content of the .SQL file or enable/disable it within Database project's settings.
For Windows Server AppFabric & Windows Azure versions, we'll post some Walkthrough installation docs right here.