NHibernate 做个小项目来试一下吧 四 (我们继续)

昨天的问题,解决了,心情一直好到现在
今天 完善了一下,我的EntityControl类,加上了返回 实体集合 和 返回单个实体的两个类
当然了,这些代码我基本上采用了拿来主义 把飞鹰用 vb.net写的改成了C#
         public  IList GetEntities(String query)
        
{
            IList lst;
            ISession s
=SessionFactory.OpenSession();
            ITransaction t
=s.BeginTransaction();

            lst
=s.Find(query);
            t.Commit();
            s.Close();
            
return lst;
        }


        
public  Object GetEntity(Type theType,Object id)
        
{
            Object obj;
            ISession s
=SessionFactory.OpenSession();
            ITransaction t
=s.BeginTransaction();
            obj
=s.Load(theType,id);
            t.Commit();
            s.Close();
            
return obj;
        }

这样的话,我们就可以继续动作了,
对于 usersdal这个类来说,还有一个重要的方法哪就是 处理用户的登录了,根据我现在所掌握的 NHibernate的知识 我只能写出这么一个方法,不知道是否还有更好的方法
         public  users login( string  user, string  pwd)
        
{
            users tmpuser;
            
string hql="from guestbook.data.users as users where users.Name='"+user+"' and users.password='"+pwd+"'";
            IList lst
=control.GetEntities(hql);

            
if(lst.Count!=0)
            
{
                tmpuser
=(users)lst[0];
            }

            
else
            
{
                tmpuser
=null;
            }

            
return tmpuser;
            
        }
利用 HQL 在中查询 如果有满足的用户 就返回一个 users类,没有就返回空

你可能感兴趣的:(Hibernate)