首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > .NET2005中,在运行阶段动态修改数据库连接字符串的方法
【标  题】:.NET2005中,在运行阶段动态修改数据库连接字符串的方法
【关键字】:.NET2005
【来  源】:http://blog.csdn.net/AirSoft007/archive/2006/09/25/1280157.aspx

.NET2005中,在运行阶段动态修改数据库连接字符串的方法

问题症状:VS.NET2005 中,数据库连接字符串可在设计阶段,在“项目-属性-设置Setting”中定义,以提供给数据源连接,特别适合于设计阶段的数据绑定。然而,出于操作系统用户权限的考虑,微软将数据库连接ConnectionString强制为全局性Application类型,而非用户User类型。全局性Application类型的设置Setting,是只读的,这就意味着数据库连接参数,必须在设计阶段明确知道,且软件发布后是不能修改的。显然,这是不现实的。比如客户的Sql Server的IP、帐号、密码、数据库名一旦与开发者所设定的不一致,必须导致数据库的无法访问。

问题思考:Application的Setting的只读,其实是指不能保存到磁盘文件,而非不能更改其内存值。我们可以借助一个User类的Setting来保存到磁盘,而在加载、更新User Setting时,自动更新Application Setting的内存值。

解决方法:
1、在设置中,添加一个Application类的数据库连接,假设名为“SqlConnString”;
2、在设置中,添加一个User类的数据库连接字符串,假设名为“UserSqlConnString”;
3、在设置窗口中,点击“查看代码”,并添加/修改其代码为:
Namespace My
    Partial Friend NotInheritable Class MySettings
        '当UserSqlConnString值被更改时,自动更新SqlConnString值。
        Private Sub MySettings_PropertyChanged(ByVal sender As Object, ByVal e As System.ComponentModel.PropertyChangedEventArgs) Handles Me.PropertyChanged
            Select Case e.PropertyName
                Case "UserSqlConnString"
                    Me("SqlConnString") = My.Settings.UserSqlConnString.ToString
                    My.Settings.Save()
            End Select
        End Sub

        '当UserSqlConnString值被加载时,自动更新SqlConnString值。
        Private Sub MySettings_SettingsLoaded(ByVal sender As Object, ByVal e As System.Configuration.SettingsLoadedEventArgs) Handles Me.SettingsLoaded
            Me("SqlConnString") = My.Settings.UserSqlConnString.ToString
        End Sub
    End Class
End Namespace

以后再也不用担心Application的“只读”了。“数据绑定”以后可以派上用场了。

缩小客户区(扩大非客户区)的方法:【上一篇】
用VC# 2005为数码照片添加拍照日期:【下一篇】
【相关文章】
  • 使用Visual C++.Net2005托管时的几个问题
  • vs.net2005C# 创建可拖动toolstrip
  • 如何将EVC4工程升级到VS.NET2005工程
  • 自动生产数据层代码的.net2005的插件程序(TNND 本来想发到CodeProject上去,结果人家说要英文说明才行.)
  • Vs.net2005制作安装布署程序是的问题总汇
  • (vs.net2005 对c++library的二十个不兼容) -------Breaking Changes in Visual C++ 2005
  • VS.NET2005中的WEBPART初步(二)
  • VS.NET2005中的WEBPART初步(一)
  • 在VS.NET2005中使用java代码段以及SOL文件格式的解析
  • vs.net2005 beta2 + Microsoft Enterprise Library June 2005
  • 【随机文章】
  • 创建 Active Directory
  • Visual Studio.Net快捷键表
  • 通用SQL数据库查询语句精华使用 (1)
  • 交换机漏洞全面了解
  • 光纤磁盘阵列技术介绍
  • Photoshop制作特效文字
  • Business SkinForm v2.64 完整源码汉化版
  • 取得"部分相同"记录具体数据
  • 使用JavaBean创建您的网上日历本
  • [spider] 爬虫总体模型
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.