spring.net 获得session

原创 2012年03月28日 13:29:10
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Linq.Dynamic;
using Domain;
using Spring.Data.NHibernate.Generic.Support;
using Spring.Data.NHibernate.Generic;

using NHibernate.Criterion;
namespace Dao.Implement
{
    
  public  class cpysiteclassRepository : RepositoryBase<cpysiteclass>,IcpysiteclassRepository
    {

      public IList<cpysiteclass> xx(NHibernate.ISession session)
      {
          //Hql
          //写法1
          //return _session.CreateQuery("from Customer c where c.Firstname='" + firstname + "'")
          //    .List<Customer>();

          //写法2:位置型参数
          //return _session.CreateQuery("from Customer c where c.Firstname=?")
          //    .SetString(0, firstname)
          //    .List<Customer>();

          //写法3:命名型参数(推荐)
          //return session.CreateQuery("from cpysiteclass c where c.classname=:fn")
          //    .SetString("fn", "药易通2")
          //    .List<cpysiteclass>();

         // return session.CreateQuery("from cpysiteclass c where c.classname like '药%' order by c.classid asc")
              
          //    .List<cpysiteclass>();

          //hql
          return session.CreateCriteria<cpysiteclass>().List<cpysiteclass>();

          //条件查询
        //  return session.CreateCriteria(typeof(cpysiteclass))
        //.Add(Restrictions.Like("classname", "药%"))
        //.AddOrder(new NHibernate.Criterion.Order("classid", true))
       
        //.List<cpysiteclass>();
          //条件查询


          // sql
         // return session.CreateSQLQuery("select * from cpysiteclass where classname like '药%' order by classid asc ").AddEntity("ss", typeof(cpysiteclass)).List<cpysiteclass>();

          //sql


          //更新
         


      
      }
      public IQueryable<cpysiteclass> LoadAllByPage(out long total, int page, int rows, string order, string sort)
        {
            var list = this.LoadAll();

            total = list.LongCount();

            list = list.OrderBy(sort + " " + order);
            list = list.Skip((page - 1) * rows).Take(rows);

            return list;
        }

      public IQueryable<cpysiteclass> LoadAllEnable()
        {
            return from li in this.LoadAll()
                  
                  
                   select li;
        }

      public IList<cpysiteclass> Searchbyclassfid(int fid)
      {
          //string hql = " from cpysiteclass u1 where u1.classfid = ? ";
          string hql = " from cpysiteclass where  classfid = ? ";
          return HibernateTemplate.Find<cpysiteclass>(hql, new object[] { fid });
          //this.HibernateTemplate.SessionFactory.GetCurrentSession
       
          //this.Session
         // this.HibernateTemplate.SessionFactory.OpenSession

          //HibernateCallback

          //得到session
          // return this.HibernateTemplate.ExecuteFind<cpysiteclass>(new FindHibernateDelegate<cpysiteclass>(xx));


          //return this.HibernateTemplate.ExecuteFind<cpysiteclass>(new xxx<cpysiteclass>());
          
          


      }

    }

  public class xxx<T> : IFindHibernateCallback<T> where T : class
  {
   public   System.Collections.Generic.IList<T> DoInHibernate(NHibernate.ISession session)
      {

          return session.CreateCriteria<T>().List<T>();


          
      }
  
  
  }
}


网友对spring.net的理解:(为什么要用晦涩难懂的spring?)

1、你在学习的时候就那点代码量,随便在Action中new一new 无所谓,当你的项目很大的时候,代码一多你每个Action再去new DAO的时候你就知道有多么痛苦的,而且你每new一次就给你产生一...
  • cctvcqupt
  • cctvcqupt
  • 2014年10月25日 22:38
  • 1495

Spring.net实战开发教程下载 Spring.net视频教程

分享一套名为《Spring.net实战开发(NHibernate3、MVC4、MemCache、Log4NET实战宠物商店)》的视频教程。本课程共十一章,包括两个阶段项目和一个项目实战。 ...
  • peaki
  • peaki
  • 2013年12月27日 09:24
  • 1688

Spring.NET教程—环境搭建(基础篇)

一、环境下载及安装     到Spring的官方网站下载Spring.NET框架的安装文件(Spring.NET-1.3.0-RC1.exe)。目前Spring.NET最新的版本是1.3。下载并...
  • fengxu511
  • fengxu511
  • 2014年02月26日 17:09
  • 1247

Spring.NET 基本使用

以前一直在使用Spring,虽然知道有Spring.NET这个东西,一直也没有时间去尝试,最近想写一个"热拔插"的高扩展性的组件,想探索下使用Spring.NET,写了一个简单的Demo作为开始。 1...
  • afandaafandaafanda
  • afandaafandaafanda
  • 2015年09月18日 14:42
  • 1677

.NET 使用spring.net实现依赖注入

原文地址:http://www.cnblogs.com/wujy/archive/2013/02/25/2932662.html
  • XuWei_XuWei
  • XuWei_XuWei
  • 2014年06月18日 09:57
  • 1668

Spring.NET框架简单搭建

这几天在学C#,感觉还是需要一个控制反转的框架,正好Spirng也有.net版的,看着API搭建一个       大致目录是这样的,我们在APP.CONFIG里面配好xml文件的地址,这个APP.C...
  • hacke2
  • hacke2
  • 2013年10月12日 19:53
  • 1937

一步一步学Spring.NET——1、Spring.NET环境准备

Spring.NET 1.3.2下载地址:http://down.51cto.com/data/861700 下载后解压   Spring.NET-1.3.2.7z:这个里面有我们需要用到的所有东西。...
  • zouyujie1127
  • zouyujie1127
  • 2014年12月18日 22:02
  • 4676

Spring.NET在.NET新时代的尴尬

本文介绍Spring.NET继承Java版Spring的衣钵,在一些.NET项目中已经被采用,并且已经被部分企业用作其开发框架的标准组成部分,但对于更大规模或者更小规模的.NET项目而言他处处给人以高...
  • demo1573
  • demo1573
  • 2015年09月15日 17:21
  • 345

NHibernate中的线程安全与线程不安全问题

NHibernate的基本特征是完成面向对象的程序设计语言到关系数据库的映射,在NHibernate中使用持久化对象PO(Persistent Object)完成持久化操作,对PO的操作必须在Sess...
  • sundacheng1989
  • sundacheng1989
  • 2014年05月26日 19:54
  • 1959

SPRING.NET 配置对象属性注入的例子

有几年没用spring.net了,下星期打算在项目里面用一下,毕竟注入能力太强大了。 首先还是用NuGet引用一下 Install-Package Spring.Core 下面创建三个类,其中一个...
  • lee576
  • lee576
  • 2015年07月11日 19:44
  • 2873
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring.net 获得session
举报原因:
原因补充:

(最多只允许输入30个字)