abstractbank.cs

来自「工作流的基本资料(文档资料」· CS 代码 · 共 62 行

CS
62
字号
using NetBpm.Test.Bank.Impl;
using NetBpm.Util.EComp;
using NetBpm.Util.DB;
using Castle.Services.Transaction;
using Castle.Facilities.NHibernateIntegration;

namespace NetBpm.Test.Bank.EComp.Impl
{
	[Transactional]
	public abstract class AbstractBank : AbstractEComp
	{
		public abstract string GetName();
		public BankComponentImpl instance = BankComponentImpl.Instance;

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

		[Transaction(TransactionMode.Requires)]
		public virtual void CreateCustomer(string name,float money)
		{
			DbSession dbSession = null;
			try
			{
				dbSession = OpenSession();
				BankAccount account= new BankAccount();
				account.BankName=GetName();
				account.Customer=name;
				account.Value=money;
				instance.CreateAccount(account,dbSession);
				dbSession.Flush();
			}
			finally
			{
				if (dbSession!=null)
				{
					dbSession.Close();
				}
			}

		}

		[Transaction(TransactionMode.Requires)]
		public virtual BankAccount GetBankAccount(string name)
		{
			DbSession dbSession = null;
			try
			{
				dbSession = OpenSession();
				return instance.GetBankAccount(GetName(),name,dbSession);
			}
			finally
			{
				if (dbSession!=null)
				{
					dbSession.Close();
				}
			}
		}
	}
}

⌨️ 快捷键说明

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