File Release Notes and Changelog
Notes:
Changes:
- Added explicit open/close connection for DataAccess framework.
- Added support for NHibernate in DataAccess framework
- Added optional tag 'daoSessionHandlers' in dao.config to support new session handler (NHibernate)
- Changed 'name' attribut on 'context' tag to 'id' (dao.config)
- Changed 'name' attribut on 'daoSessionHandler' tag to 'id' (dao.config)
- Added support for C# using syntax in DataAccess/DataMapper
* using ( IDalSession session = daoManager.OpenConnection() )
{
...db operations...
}
* using ( IDalSession session = daoManager.BeginTransaction() )
{
...db operations...
session.Complete(); // Commit
}
* using ( IDalSession session = sqlMap.OpenConnection() )
{
...db operations...
}
* using ( IDalSession session = sqlMap.BeginTransaction() )
{
...db operations...
session.Complete(); // Commit
}
- Added support for Distributed Transaction à la Indigo with TransactionScope object
in iBATIS.Common.Transaction (see Unit test in CommonTests.Transaction for usage)
using (TransactionScope tx = new TransactionScope())
{
// Open connection to database 1
// Transaction will be automatically enlist into it
// Execute update in database 1
// Open connection to database 2
// Transaction will be automatically enlist into it
// Execute update in database 2
// Open a MessageQueue
// Transaction will be automatically enlist into it
// Post message
// the following code will be executed only if no exception
// occured in the above code; since we got here ok, let's vote for commit;
// in most if not all of the cases, this last line will be the same as below
tx.Complete();
}
// when “using” call Dispose on the transaction scope at the end
// of the “using” code block, the "ambient" transaction will be commited only and only if
// the Complete method have been called.
Only supported in
- XP SP2 (or higher)
- Windows Server 2003
- XP SP1 + Hotfix 828741
and only in .Net 1.1.
It CAN'T be used on Windows 2000.
Don't support nested TransactionScope.
- Removed 'assembly' attribut on <daoFactory> element of Dao.Config
the implementation structure attribut of <dao> element become the namespace-qualified name of the class is specified, followed by a comma, followed by (at a bare minimum) the name of the assembly that contains the class.