Expense Sample - January 2009 (for .NET 3.5 SP1)

Rating:        Based on 6 ratings
Reviewed:  5 reviews
Downloads: 10393
Released: Jan 29, 2009
Updated: Jan 29, 2009 by firedancer
Dev status: Stable Help Icon

Recommended Download

Source Code ExpenseSample-V3.5-20090129.zip
source code, 607K, uploaded Jan 29, 2009 - 10393 downloads

Release Notes

Please read the accompanying README.txt file for setup and installation instructions.

This is the public release of the Expense sample application V3.5 for .NET 3.5 SP1 which contains an example of using ADO.NET Entity Framework in the Layered Architecture. This version is only supported on Visual Studio 2008 Service Pack 1.

Revisions:
  • Data Layer and Business Entities now use ADO.NET Entity Framework.
  • Updated architecture diagram included.
  • Renamed the Presentation Layer namespaces.
  • Changed ASP.NET Web Sites to ASP.NET Web Projects.
  • Removed manual proxies and use svcutil.exe (Add Service Reference) generated proxies.
  • Changed primary key types in database to reflect recommended practices.

Previous stable version for Visual Studio 2008 and .NET 3.5 can be found here
http://www.codeplex.com/LayerSample/Release/ProjectReleases.aspx?ReleaseId=19929

Previous stable version for Visual Studio 2005 and .NET 3.0 can be found here
http://www.codeplex.com/LayerSample/Release/ProjectReleases.aspx?ReleaseId=11916

This sample contains 15 Visual Studio 2008 SP1 projects that illustrates the following:

Presentation Layer
  • Expense Application - A Windows Forms client for expense submission.
  • Manager Application - A Windows Forms client for approving expense.
  • UI Process - Contains user process components.
  • Web Application - Contains the ASP.NET version of the expense submission and approver application.

Business Layer
  • Business Components - Contains Business logic classes.
  • Business Entities - Contains entity classes that are used in the application.
  • Business Workflows - Contains the Sequential Expense Workflow class.
  • Workflow Activities - Contains custom workflow activities.
  • Workflow Services - Contains the Local Service (ExternalDataExchangeService) implementation.

Services Layer
  • Service Contracts - Contains WCF Service Contracts.
  • Services - Contains WCF service implementation (non WorkflowService).

Data Layer
  • Data - Contains components that performs CRUD functions.

Hosts
  • Console Host - Console host for the WCF Services.
  • Windows Service Host - Windows Service host for the WCF Services.
  • WebHost - IIS host for the WCF Expense Services.

For more information on Application Architecture for .NET, please refer to the following Microsoft patterns & practices guide http://www.codeplex.com/AppArchGuide

Please report any issues for this release in Issue Tracker

Please feel free to feedback on this release in Discussions

Thank You for downloading Layered Architecture Sample. Please help spread the news about Layered Architecture Sample :)

Reviews for this release

     
It's really a great work. Many things to learn. Although, project description states objective clearly, I have a suggestion. If accompanied by 'step by step guide' it would be great learning experience for newbies like me. At least code comments and a full problem statement will make better understanding of functionality. your efforts are uncomparable. Thank you very much.
by sap2000 on Jul 8, 2009 at 9:29 AM
     
Thanks for this job. But I have a couple of questions. 1. Why didn't you choose WWF State Machine? I have understood that State Machines workflows are used to human being interactions. 2. Why you use UI process? If you are able to do all of this in the same Windows Form class. I mean, validation and communication with other layers could be done in the same class. Thanks a lot, again!
by aleafonso on Jul 7, 2009 at 4:26 PM
     
Excelente example of good architecture design.
by fbridger on Apr 17, 2009 at 6:45 PM
     
Great example of putting all the pieces together. Best I've found, and I've been searching for a while. :-) thanks!!!
by jwbrewster on Mar 7, 2009 at 2:28 PM
     
Excellent work! Request: Do you have any simple example with vb.net code?
by netpicker9 on Feb 25, 2009 at 10:18 PM