locked
Any good Ntier real world (architecture)examples available for download? RRS feed

  • Question

  • Hi all,

    Everybody talks about designing a good architecture

    Talking between tiers in stateless manner

    avoid chatty objects

    use interfaces

    Use factory patterns

    etc etccc

    But no one has published or uploaded some generic examples of different architectures so that you can see how things really work.(A complete solution)with different projects in it.

    Just tired of reading theory and not seeing any examples.

    Am I wrong?

    Could anybody point me in the right direction or do i have to reinvent the wheel?If I have to it will probably be a square one

    Thanks and apologies for moaning.

    Wednesday, September 13, 2006 11:19 AM

Answers

  • Please check the following link for Global Bank Integration Implementation.

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/AIB.asp

    It includes source code as well as documentation and a flash version demo. Documentation will contain different architecture views as well. Also check out EDRA (1.1) (Enterprise development Reference Architecture) for more information and source code.

    EDRA is available in gotdotnet web site through the following link..

    http://www.gotdotnet.com/codegallery/codegallery.aspx?id=9c29a963-594e-4e7a-9c45-576198df8058

    Register yourself for downloading documentation and reference source code.

    Regards
    Friday, September 15, 2006 6:26 AM

All replies

  • Hi,

     There are  reference architecture materials and applications with source code and documentation available in msdn.microsoft.com/architecture/

    Check for global bank reference implementation architecture

    Regards
    Thursday, September 14, 2006 1:18 PM
  • Thanks for your reply.But I still cannot find any source code.

    Could you be so kind as to give a link for the source code where the example resides?

     

    thanks

    Thursday, September 14, 2006 3:26 PM
  • Please check the following link for Global Bank Integration Implementation.

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/AIB.asp

    It includes source code as well as documentation and a flash version demo. Documentation will contain different architecture views as well. Also check out EDRA (1.1) (Enterprise development Reference Architecture) for more information and source code.

    EDRA is available in gotdotnet web site through the following link..

    http://www.gotdotnet.com/codegallery/codegallery.aspx?id=9c29a963-594e-4e7a-9c45-576198df8058

    Register yourself for downloading documentation and reference source code.

    Regards
    Friday, September 15, 2006 6:26 AM
  • hi

    Thanks for your time and links.

    I will have a go at this one.If you know of any other links i would be grateful.
    Thanks again

    Tuesday, September 19, 2006 11:27 AM
  • For some nice training material you can look at "The Architecture of Modern Desktop Applications in .NET" a 15-part webcast series on Smart Clients for the VB and C# developer, it's a good starting point! and start reading the Domain-Driven Design Books
    Tuesday, September 19, 2006 6:22 PM
  • It really depends on your definition of 'architecture'... Just kidding, I hear that so often it's gone from cliche to joke.

    At any rate, you will find that, industrially, there is very little to start with that could be considered a real domain-applicable architecture published. The reason for this is the same reason I can't send you my current web-architecture: it is my company's intellectual property and perceived competitive edge. I'm not allowed.

    So where do you go?

    You start with MS examples and walkthroughs. Keep in mind that your eventual architecture will be as much a statement of your environmental constraints as your personal philosophy. Many times, MS puts together their guidance to show off the capabilities of a technology, not to show everyone in the world the 'best' way to do it. Keep what you need and dump what you don't.

    Next, take a look at some of the ORM tools out there. Most look at your database and generate a class heirarchy that looks just like your relational structure. Not exactly useful but it certainly is insight into different ways of composing your objects and their communication channels.

    If you are looking for a front-to-back, pattern-based, scaleable, winforms, documented architecture, buy Rocky Lhotka's latest CSLA.Net book and see what you think. I don't personally care for some of his decisions and it's not geared toward web-based development, but it's an honest-to-goodness architecture in just about anybody's book.

    Hope that helps.

    Tuesday, September 19, 2006 7:58 PM
  • Hi there.

    If you have codesmith (code generation tool) and nettiers (template set that runs on codesmith) you could generate something if you have a workable database. NorthwindDB would do.

    If will give you a whole lot of code to look at and play with.

    Tuesday, September 19, 2006 8:22 PM
  • Hi,

     

    Have you tried CSLA architecture by Rockford Lhotka. Its quite good for n-tier application. Try http://www.lhotka.net/. He also provides the framework code for this architecture on this site.

     

     

    Wednesday, September 20, 2006 9:38 AM
  • Thanks so much for your replies.
    I have just bought csla.net book and I will have a read.

    Regarding some examples on architecture ,I know that its very broad term and that nothing is
    set in stone.However It would have been nice to have some template and then take it from there
    really.A small example with just 4 stored procedure (select-insert-update-delete)would have done the job.

    What was needed is a
    DataAccess Layer
    FacadeLayer or Service Layer
    Business Layer
    Presentation layer (Win/Web App to show the result.

    Each of these layer is an individual project and showing how you pass objects between
    tiers in a stateless manner and using patterns.

    You see Microsoft published some books on passing objects between tiers but not an example.

    The problem with all the architecture stuff is that there are lot's book on theory and telling
    you this and that but then they lack an example.

    Regarding many ORM tools they generate lots of code but I have NOT found an explanation of their code and why they generated code that

    way.I can generate code too .I have written lots of codeDom Stuff but what Architecture?

    Thanks again for all your replies and time

     

    Tuesday, September 26, 2006 9:02 AM
  • EntitySpaces

    Persistence Layer and Business Objects for Microsoft .NET 2.0

    The EntitySpaces architecture for .NET is a new persistence layer and business object system for the Microsoft .NET 2.0 Framework. The EntitySpaces architecture is also database independent. The EntitySpaces data providers are loosely coupled to your application and allow you to use the same compiled code to access a whole host of databases.

    The EntitySpaces architecture for .NET has in its ancestry the popular dOOdads architecture. The EntitySpaces architecture is generated from your database's metadata or schema using the popular code generator and OR Mapping tool, MyGeneration. MyGeneration is 100% free.

    Features:

    Providers Available:

    • Microsoft SQL Server
    • Microsoft Access
    • Oracle
    • MySQL

           See http://www.entityspaces.net

     

    Sunday, October 1, 2006 5:49 AM
  • Thanks for your reply regarding your tool  "MyGeneration",

    However Can you provide the following free of charge:

    Full Source Code free of charge

    Architecture of the code you are generating and why you are generating that architecture.

    Do you use Patterns?And why you use that pattern ,How do you pass data between tiers and why?

    The reason I am asking this is I can generate code too however I am looking for  a good architecture to base on.

    Do you provide an example application I can download that has no call to a an underlying dll which have no control over?

    I think that a good CodeGenerator doesnt tie you up to any stuff and it you the user who has control on what to call or not to call.

    I would be interested in your views?

     

    Thanks again

     

     

    Monday, October 2, 2006 11:39 AM
  •  

    Well, you never stated in your original post you wanted something free of charge, however, the source is available for purchase, let me see if I can help here.

    Do we use Patterns? Well no, what would we use them for exactly? EntitySpaces is a classic how to use ADO.NET correctly architecture. We leave the data in the DataTable, all of our get/set's read/write to the datatable (though you never see the DataTable). Do we pass data between tiers? No, we have no tiers, the seperation of DAL and Business Objects passed away a decade ago, that is an out dated construct for many reasons. EntitySpaces supports full binary and xml serialization however, if you want to do things that way.

    In EntitySpaces there are DLLs, however, you can obtain the source. For an architecture not to use base classes would be to forgo object oriented programming. MyGeneration is the Code Generation we use, but it's impossible for a code generated to tie you up, it just generates the code, only architectures can tie your hands by cutting off the underlying ADO.NET api. EntitySpaces provides mechanisms to query the data in any way you desire, we also have a very cool dynamic query API and we support LINQ.

     
      AggregateTestCollection aggTestColl = new AggregateTestCollection();
      aggTestColl.Query.es.CountAll = true;
      aggTestColl.Query
         .Select
         (
             aggTestColl.Query.IsActive,
             aggTestColl.Query.DepartmentID
         )
         .Where
         (
             aggTestColl.Query.IsActive.Equal(true)
         )
         .GroupBy
         (
             aggTestColl.Query.IsActive,
             aggTestColl.Query.DepartmentID
         );
      aggTestColl.Query.Load();

    The classes are laid out like this, see http://www.entityspaces.net/images/esCore.png

    Yes, we have samples and a trial version and a presentation that can show you how to have your complete EntitySpaces business objects created in about 5 minutes, and is probably the best performing architecure on the market.

    Mike Griffin
    EntitySpaces LLC
    http://www.entityspaces.net

     

     

     

     

    Monday, October 2, 2006 3:09 PM
  • Hi thanks for your reply.

    Well, you never stated in your original post you wanted something free of charge, however, the source is available for purchase

    I never expected to get replies by pitching/selling their product.My understanding is that this is a forum where people share knowledge not buy it.

    I dont think entitySpaces from what you say is what I need .I do use ado.net to get the stuff from the database but only in my data Access Layer.But i would  plan an architecture on the line of CSLA not as involved though (just finished reading the book)where you pass an object between tiers in a stateless manner.

    Regarding the separation of tiers I totally disagree .Whatever organization I worked for whether using remoting or not we always had an NTier Architecture (EG London dataCenter,NewYork business Server etcc..),I have never read any  MS articles that suggests that.

    Regarding patterns I use some of the gangof4  patterns.Are they outdated as well?

    Now my post is not to be argumentative but gaining knowledge from it.I totally disagree with your statement but i dont want carry on this line.

    My original post was whether there were example application where an Enterprise architecture was put in place.

    Thanks for your feedback though

     

     

    Monday, October 2, 2006 3:44 PM
  • I wish you the best of luck then.

    - Mike

    Monday, October 2, 2006 5:33 PM