Results 1 to 3 of 3

Thread: Transactions in Biz Layer or DAL? (.Net)

  1. #1

    Thread Starter
    Software Carpenter dee-u's Avatar
    Join Date
    Feb 2005
    Location
    Pinas
    Posts
    11,127

    Arrow Transactions in Biz Layer or DAL? (.Net)

    Upon reading some discussion a few moments ago I came across some statements that there is a rule of not putting one's transactions in the DAL but on the Business Layer instead, may I know your opinions on this?
    Regards,


    As a gesture of gratitude please consider rating helpful posts. c",)

    Some stuffs: Mouse Hotkey | Compress file using SQL Server! | WPF - Rounded Combobox | WPF - Notify Icon and Balloon | NetVerser - a WPF chatting system

  2. #2
    MS SQL Powerposter szlamany's Avatar
    Join Date
    Mar 2004
    Location
    Connecticut
    Posts
    18,263

    Re: Transactions in Biz Layer or DAL? (.Net)

    Well I'm no expert in n-tier design...

    But it makes sense to me that the DAL is a more granular "pipe to the data" set of routines...

    Only the business-layer knows the bigger picture of when a transaction begins and ends.

    Were you speaking about transactions in regard to begin and end?

    *** Read the sticky in the DB forum about how to get your question answered quickly!! ***

    Please remember to rate posts! Rate any post you find helpful - even in old threads! Use the link to the left - "Rate this Post".

    Some Informative Links:
    [ SQL Rules to Live By ] [ Reserved SQL keywords ] [ When to use INDEX HINTS! ] [ Passing Multi-item Parameters to STORED PROCEDURES ]
    [ Solution to non-domain Windows Authentication ] [ Crazy things we do to shrink log files ] [ SQL 2005 Features ] [ Loading Pictures from DB ]

    MS MVP 2006, 2007, 2008

  3. #3
    Member
    Join Date
    Jan 2006
    Location
    UK
    Posts
    61

    Re: Transactions in Biz Layer or DAL? (.Net)

    When considering this, please bear in mind the problems of the database administrator. Your database, as it scales, will need troubleshooting on all sorts of issues, such as locking and performance.

    As more database specific code that goes into your app, rather than stored procs, the less a dba is able to do when troubleshooting.

    For instance, if a transaction is enacted in .Net assembly, and that transaction causes a locking problem, it is hard for the dba to find. It is also next to impossible to rectify without recompiling the assemblies.

    In disconnected applications, which are currently in vogue due to scalability and durability of operations, transactions across components are not recommended. This is due to the use of queues to move data around within the architecture.

    Also, web service technology does not provide a useful mechanism for distributed transactions.

    The whole essence of a distributed transaction is that multiple systems are locked during the process. This reduces scalability and performance.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width