Nhibernate3.0cookbook学习笔记动态设置连接字符串-创新互联

我们都知道数据库有两种验证模式:Windows身份验证模式与SQL SERVER验证模式。

我们提供的服务有:网站制作、网站设计、微信公众号开发、网站优化、网站认证、政和ssl等。为1000+企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的政和网站制作公司

在Nhibernate中可以动态的去配置它。

在App.config中,这样添加两个连接字符串

对应Nhibernate程序的配制:

       
                DynamicConnectionString.DynamicConnectionProvider,
                DynamicConnectionString
  
                NHibernate.Dialect.MsSql2008Dialect,
                NHibernate
  
                db
  
                100
       

注意节点connection.provider的值。

然后再添加字符串提供类:

public class DynamicConnectionProvider
    {
private const string ANON_CONN_NAME = "db";
private const string AUTH_CONN_NAME = "auth_db";
protected override string ConnectionString
        {
get
            {
var connstrs = ConfigurationManager.ConnectionStrings;
var connstr = connstrs[ANON_CONN_NAME];
if (IsAuthenticated())
                    connstr= connstrs[AUTH_CONN_NAME];
return connstr.ConnectionString;
            }
        }
private bool IsAuthenticated()
        {
var identity = WindowsIdentity.GetCurrent();
return identity != null && identity.IsAuthenticated;
        }
    }

当前文章:Nhibernate3.0cookbook学习笔记动态设置连接字符串-创新互联
网页路径:http://pwwzsj.com/article/dicgej.html