Esempio n. 1
0
        public PersonVo GetPersonByUserId(string userId)
        {
            ITPersonMsDao dao      = ComponentLocator.Instance().Resolve <ITPersonMsDao>();
            TPersonMs     personms = dao.getPersonByUserId(userId);

            if (personms == null)
            {
                throw new ApplicationException(MessageUtils.GetMessage("E0001"));
            }
            else
            {
                PersonVo personvo = new PersonVo();
                PropertiesCopier.CopyProperties(personms, personvo);
                personvo.ICompanyCd = personms.Id.ICompanyCd;
                personvo.IPersonCd  = personms.Id.IPersonCd;

                return(personvo);
            }
        }
        public TPersonMs getPersonByUserId(string userId)
        {
            TPersonMs person = null;

            ISession ss = holder.CreateSession(typeof(TPersonMsDaoOracleImp));

            ITransaction tran = ss.BeginTransaction();

            try
            {
                //result = (IList<MFunctioncatalog>)FindAll(typeof(MFunctioncatalog));
                ScalarQuery <TPersonMs> q = new ScalarQuery <TPersonMs>(typeof(TPersonMs), @"
                                                from TPersonMs where IUserId=:IUserId");
                q.SetParameter("IUserId", userId);
                person = q.Execute();
                //FindByPrimaryKey找不到数据的时候是抛出ActiveRecordException,不太好处理
                //termms = (TTermMs)FindByPrimaryKey(typeof(TTermMs), userid);
            }
            catch (Castle.ActiveRecord.Framework.ActiveRecordException ex)
            {
                tran.Rollback();
                throw new ApplicationException(ex.Message, ex);
            }
            catch (DbException ex)
            {
                tran.Rollback();
                throw new ApplicationException(ex.Message, ex);
            }
            finally
            {
                tran.Dispose();
                holder.ReleaseSession(ss);
            }



            return(person);
        }