⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bankaecomp.cs

📁 基于DotNet的开源工作流引擎
💻 CS
字号:
using Castle.Services.Transaction;
using Castle.Facilities.NHibernateIntegration;
using NetBpm.Util.DB;
using NUnit.Framework;

namespace NetBpm.Test.Bank.EComp.Impl
{
	[Transactional]
	public class BankAEComp : AbstractBank, IBankA
	{

		public BankAEComp(ISessionManager sessionManager) : base(sessionManager)
		{
		}

		override public string GetName()
		{
			return "BankA"; 
		}

		[Transaction(TransactionMode.Requires)]
		public virtual void TestTransactionCreation()
		{
			DbSession dbSession = OpenSession();
			Assert.IsNotNull(dbSession.Transaction);
			dbSession.Close();
		}

		[Transaction(TransactionMode.Requires)]
		public virtual void TransferMoney(string name,float money,IBankB bank)
		{
			DbSession dbSession = null;
			try
			{
				dbSession = OpenSession();
				instance.Withdraw(GetName(),name,money,dbSession);
				bank.DeposidMoney(name,money);
				// Ohhhh I forgot the rules ;-)
				if (money>10)
				{
					throw new AccountException("it is not allowed to transfer more then 10!");
				}
			}
			finally
			{
				if (dbSession!=null)
				{
					dbSession.Close();
				}
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -