BaseBussiness

namespace MIS.User_Mapping.Contract.BLL
{
    public class BaseBussiness : IDisposable
    {
        #region EF
        private BaseDBAction<int> dbAction = null;
        /// <summary>
        /// EF Linq
        /// </summary>
        protected BaseDBAction<int> DBAction
        {
            get
            {
                if (dbAction == null) {
                    dbAction = new BaseDBAction<int>(DBContext);
                }
                return dbAction;
            }
        }

        private BaseDBContext dbContext = null;
        /// <summary>
        /// context
        /// </summary>
        protected BaseDBContext DBContext
        {
            get
            {
                if (dbContext == null) {
                    dbContext = new UserMappingDBContext("default");
                }
                return dbContext;
            }
        }

        /// <summary>
        /// Tran
        /// </summary>
        /// <param name="action"></param>
        public void Tran(Action action)
        {
            this.DBAction.Tran(action);
        }
        #endregion

        #region XML
        protected T ReadXml<T>(string xml) where T : IConvertXml
        {
            T t = Activator.CreateInstance<T>();
            t.ReadXml(xml);
            return t;
        }

        protected string WirteXml(IConvertXml obj)
        {
            return obj.WriteXml();
        }
        #endregion

        #region Dispose
        /// <summary>
        /// Dispose
        /// </summary>
        public void Dispose()
        {
            if (dbContext != null) {
                //this.dbContext.Dispose();
                this.dbContext = null;
            }
            GC.SuppressFinalize(this);
        }

        ~BaseBussiness()
        {
            Dispose();
        }
        #endregion
    }
}

 

posted @ 2016-12-06 17:39  江境纣州  阅读(44)  评论(0)    收藏  举报