注册表中存储数据库链接字符串的方法_实用技巧

数据库的链接字符串是用数据库开发所必须的信息,我们通过链接字符串连接数据库,并进行各种数据库操作。那么链接字符串的存到哪里好呢?这没有什么定论,Asp系统开发中,一般存在一个conn.asp包含文件中或者如果又是COM,可能还会封闭到COM中,.Net开发中,大多数都选择存在Web.conifg中,也有人存储在另外一个单独的文件中。那么本文提供的是把数据库链接信息存储到注册表中的方案。也许你要问为什么要存到注册表呢?我想最起码的好处是安全,注册表的访问权限很高,一般远程服务在没有得到管理员账号的情况下是没有权限来对注册表进行操作的,那么用来连接数据库的账户信息便安全许多。 

一、在注册表中建立相应的键及值: 

有三种方法可以在注册表中添加我们需要的信息: 

1、纯手工的方法:开始->运行->Regedit,然后在相应的位置新建所需要的键和值。 

2、运行一个注册表注册程序: 

Windows Registry Editor Version 5.00 

  

[HKEY_LOCAL_MACHINE\SOFTWARE\TownSite] 

"Town"="server=localhost;database=Town;User Id=sa;Pwd=pass" 

将上面的代码保存成一个.Reg文件,然后双击运行便可以在相应的位置添加相应的信息。 

3、程序实现(C#): 

 RegistryKey regKey = Registry.LocalMachine.CreateSubKey("SOFTWARE\\TownSite"); 

regKey.SetValue(dbName,"server=Hi4-kelvin-yu;database=Test;User ID=sa;Pwd=pass"); 

说明:C#有对注册表进行处理的类和方法,首先要引入命名空间Microsoft.Win32 ,CreateSubKey方法会自动检测有没有相应的键值,如果没有则会创建,如果有则返回表示该键的RegistryKey的实例,如果可以确定有键值的话,也可以用OpenSubKey打开。dbName是值名,通过变量传过来。 

  

二、读取键值: 

读取键值非常简单 

     RegistryKey regKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\TownSite", false); 

     connectionString = regKey.GetValue(dbName).ToString().Trim(); 

说明:从相应的键处读取值信息,然后得到数据库链接字符串赋给一变量或者属性,然后就可以进行数据库连接了。 

三、一点说明: 

如果采用程序的方式创建注册表的键值,就要确保aspnet用户有对注册表的操作权限,方法如下:“开始->运行”,输入命令,“regedt32”,找到“System->CurrentControlSet->Services->Eventlog”,选择“安全->权限->添加”,然后找到本机的“AspNet”用户,加进来并且给读取权限就好了,加进来后目录中会多一个“aspnet_wp account”

时间: 2024-11-03 18:22:21

注册表中存储数据库链接字符串的方法_实用技巧的相关文章

注册表中存储数据库链接字符串

链接|数据|数据库|注册表|字符串 引言: 数据库的链接字符串是用数据库开发所必须的信息,我们通过链接字符串连接数据库,并进行各种数据库操作.那么链接字符串的存到哪里好呢?这没有什么定论,Asp系统开发中,一般存在一个conn.asp包含文件中或者如果又是COM,可能还会封闭到COM中,.Net开发中,大多数都选择存在Web.conifg中,也有人存储在另外一个单独的文件中.那么本文提供的是把数据库链接信息存储到注册表中的方案.也许你要问为什么要存到注册表呢?我想最起码的好处是安全,注册表的访问

详解在.net中读写config文件的各种方法_实用技巧

今天谈谈在.net中读写config文件的各种方法. 在这篇博客中,我将介绍各种配置文件的读写操作. 由于内容较为直观,因此没有过多的空道理,只有实实在在的演示代码, 目的只为了再现实战开发中的各种场景.希望大家能喜欢. 通常,我们在.NET开发过程中,会接触二种类型的配置文件:config文件,xml文件. 今天的博客示例也将介绍这二大类的配置文件的各类操作. 在config文件中,我将主要演示如何创建自己的自定义的配置节点,而不是介绍如何使用appSetting . 请明:本文所说的conf

asp.net中IDataParameter调用存储过程的实现方法_实用技巧

本文实例讲述了asp.net中IDataParameter调用存储过程的实现方法,是asp.net数据库程序设计中非常实用的技巧.分享给大家供大家参考. 具体实现方法如下: public string GenerateExamePaper(string paperType, string driverID, string MacAddr) { int i; IDataParameter[] iData = new SqlParameter[4]; iData[0] = new SqlParame

asp.net中Table生成Excel表格的方法_实用技巧

本文实例讲述了asp.net中Table生成Excel表格的方法.分享给大家供大家参考. 具体实现方法如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/19

在.NET中取得代码行数的方法_实用技巧

文章目的 介绍在.NET中取得代码行数的方法 代码 复制代码 代码如下: [STAThread] static void Main(string[] args) { ReportError("Yay!"); } static private void ReportError(string Message) { StackFrame CallStack = new StackFrame(1, true); Console.Write("Error: " + Messa

ASP.NET中访问DataGrid中所有控件值的方法_实用技巧

本文实例讲述了ASP.NET中访问DataGrid中所有控件值的方法.分享给大家供大家参考,具体如下: <%@ Page Language="C#" %> <%@ import Namespace="System.Collections" %> <script runat="server"> void Page_Load(Object sender, EventArgs e) { if(!Page.IsPost

asp.net使用DataTable构造Json字符串的方法_实用技巧

本文实例讲述了asp.net使用DataTable构造Json字符串的方法.分享给大家供大家参考,具体如下: /// <summary> /// 将datatable转换为json /// </summary> /// <param name="dtb"></param> /// <returns></returns> private string Dtb2Json(DataTable dtb) { JavaScr

Asp.net MVC中获取控制器的名称的方法_实用技巧

1.视图中 string controller = ViewContext.RouteData.Route.GetRouteData(this.Context).Values["controller"].ToString(); string controller = ViewContext.RouteData.Values["controller"].ToString(); 2.控制器的action中 string controller = RouteData.Ro

ASP.NET连接 Access数据库的几种方法_实用技巧

web.config 第一种方法: <?xml version="1.0" encoding="utf-8"?> <!-- 有关如何配置 ASP.NET 应用程序的详细消息,请访问 http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <appSettings> <add key="AccessConnString"