ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法

第一种情况,本地开发时,使用本地数据库,如下面的代码

<connectionStrings>
    <add name="myConn" connectionString ="Data Source=(LocalDB) \v11.0;AttachDbFilename=|DataDirectory| \Movies.mdf;Integrated Security=True" providerName ="System.Data.SqlClient" />
</connectionStrings>

name属性指的是连接字符串名称,网站中需要使用数据库时,都需要引用这个连接字符串名称,本例中为myConn;

Data Source属性是数据库服务器,(LocalDB)\V11.0说明使用本地数据库服务器,版本号为11,即SQL Server 2012默认有的自动实例为 v11.0,2014的默认实例为:MSSQLLocalDB;

AttachDbFilename属性是指定具体数据为名称及位置,|DataDirectory| 对应ASP.NET网站中的系统目录App_Data,本属性值说明连接到本目录中的名为Movies.mdf数据库,其中,mdf文件名说明该数据库需要SQL Server服务器的服务,但它本身是一个独立的数据库文件,可以进行复制粘贴而不需要在SQL Server管理系统(如SSMS)进行数据库分离工作;

Integrated Security=True" 说明是集成验证,是Windows验证的方式,只要有这个属性及属性值,连接字符串中就不需要用户名及密码;

providerName ="System.Data.SqlClient"为数据提供程序;

这种情况是本地开发最常用的情况:可以直接使用ASP.NET创建数据库(扩展名即为.mdf),也可以使用ASP.NET网站配置生成ASPNETDB.MDF数据库,当数据库创建完成后,在ASP.NET界面中创建连接字符串,只需要提供连接字符串的名称,连接字符串的其它属性及属性值可以自动在web.config文件中生成。

第二种情况,本地开发时,使用下面的连接字符串:

<connectionStrings>
    <add name="myConn" connectionString="Data Source=|DataDirectory|MvcMusicStore.sdf" providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>

说明:这里的connectionString属性比第一种情况简单,注意这里的数据库扩展名 .sdf,这是MS SQL Compact版本的数据库,它不需要打开SQL Server的服务即可使用,精致小巧,便于使用,但支持性不如.mdf(这个是MS SQL Server标准版文件格式)。因此,在正常的PC机进行开发时,建议使用.mdf文件,如果在机器上没有MS SQL Server服务运行时,.sdf是一个不错的选择。

第三种情况,本地开发时,使用下面代码:

<connectionStrings
<add name="DefaultConnection" connectionString ="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcMovie-2012213181139;Integrated Security=true" providerName ="System.Data.SqlClient" /></connectionStrings>

说明:这里的数据库名没有扩展名,说明是由MS SQL Server直接管理的数据库,不是独立的数据库文件(即:如果想复制该数据库,需要在SQL Server管理工具中分离这个数据库)。这种连接往往是使用SQL Server创建数据库,再用ASP.NET创建连接,本地开发时,用的不是很常见。

第四种情况,远程部署时,可以看到下面的代码:

<connectionStrings>
    <add name="myConn" connectionString="Data Source=服务器名;Initial Catalog=数据库名;uid=用户Id;pwd=用户密码;"/>
</connectionStrings>

说明:当需要把本地开发完成的ASP.NET网站部署到远程空间(比如租用空间、比如自己的服务器),开始实际提供网站访问服务时,则使用这种连接字符串。如果是租用空间,空间提供商会提供服务器名称,数据库名称,用户名及口令。注意这里没有了Integrated Security=true"属性名及属性值,所以需要用户名与密码。
因此,当在使用连接字符串进行本地开发(往往是本文中第一种方式)完成并测试成功后,需要根据远程服务器的数据,对连接字符串进行修改再上传至远程服务器,才能提供真正的Internet访问。

App_Data文件夹 
App_Data文件夹应该包含应用程序的本地数据存储。它通常以文件(诸如Microsoft Access或Microsoft SQL Server Express数据库、XML文件、文本文件以及应用程序支持的任何其他文件)形式包含数据存储。该文件夹内容不由ASP.NET处理。该文件夹是ASP.NET提供程序存储自身数据的默认位置。

注意:默认ASP.NET帐户被授予对文件夹的完全访问权限。如果碰巧要改变ASP.NET帐户,一定要确保新帐户被授予对该文件夹的读/写访问权。

摘自 ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法

ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法的更多相关文章

  1. 不同数据库下的web.config中数据库连接字符串

    <connectionStrings> <add name="OADBConnectionString" connectionString="Data ...

  2. (译)利用ASP.NET加密和解密Web.config中连接字符串

    介绍 这篇文章我将介绍如何利用ASP.NET来加密和解密Web.config中连接字符串 背景描述 在以前的博客中,我写了许多关于介绍 Asp.net, Gridview, SQL Server, A ...

  3. 利用ASP.NET加密和解密Web.config中连接字符串

    摘自:博客园 介绍 这篇文章我将介绍如何利用ASP.NET来加密和解密Web.config中连接字符串 背景描述 在以前的博客中,我写了许多关于介绍 Asp.net, Gridview, SQL Se ...

  4. web.config中连接字符串的读写和加密解密

    转载:https://www.cnblogs.com/shuai/articles/2248703.html 1.先来看看如何在web.config中写入数据库连接字符串.打开web.config文件 ...

  5. 【转载】两个Web.config中连接字符串中特殊字符解决方案

    userid =  test password = aps'"; 那么连接字符串的写法为: Provider=SQLOLEDB.1;Password="aps'"&quo ...

  6. ASP.NET Web Service中使用Session 及 Session丢失解决方法 续

    原文:ASP.NET Web Service中使用Session 及 Session丢失解决方法 续 1.关于Session丢失问题的说明汇总,参考这里 2.在Web Servcie中使用Sessio ...

  7. ASP.NET web.config中的连接字符串

    在ASP.NET的web.config中,可以用两种方式来写连接字符串的配置. <configuration> <appSettings> <add key=" ...

  8. ASP.Net Web.config 中引用外部config文件

    1. 前提准备: Web.config file: <?xml version="1.0" encoding="utf-8"?><config ...

  9. web.config的数据库连接字符串进行加密

    连接参考:http://wenku.baidu.com/link?url=nwGug8wxz143A4pvBE_kN6vMU7aF3ojwCKJOyN-TQleZ07iAYrjx_FnFVDOtZAF ...

随机推荐

  1. Oracle win32_11gR2_database在Win7下的安装与卸载

    Oracle win32_11gR2_database在Win7下的安装与卸载 by:授客 QQ:1033553122 Oracle的硬件要求 在安装oracle之前,请检查一下自己的电脑硬件是否复合 ...

  2. Android 2018最新验证手机号正则表达式

    /** * 判断字符串是否符合手机号码格式 * 移动号段: 134,135,136,137,138,139,147,150,151,152,157,158,159,170,178,182,183,18 ...

  3. spring使用BeanPostProcesor实现AOP源码分析

    源码 AbstractApplicationContext#public void refresh() throws BeansException, IllegalStateException { f ...

  4. winsock编程学习笔记

    以下部分转自博客http://blog.csdn.net/phunxm/article/details/5085869 套接字地址(sockaddr.sockaddr_in) /* * Structu ...

  5. Mac 的mysql5.7没有配置文件,如何解决only_full_group_by 问题

    数据库版本是5.7.19,在写语句的时候,只要涉及ORDER BY,就会报错, ERROR 1055 (42000): Expression #7 of SELECT list is not in G ...

  6. Python之随机森林实战

    代码实现: # -*- coding: utf-8 -*- """ Created on Tue Sep 4 09:38:57 2018 @author: zhen &q ...

  7. tkinter中frame布局控件

    frame控件 frame控件是将窗口分成好几个小模块,然后每个小模块中添加控件. 也就是将窗口合理的布局 由于和其他控件的操作基本一致,就不做注释了 import tkinter wuya = tk ...

  8. C#语言————格式化数值结果表

    字符 说明                                     示例                                                 输出结果.C ...

  9. 高通adsp架构下sensor

    一.高通sensor架构: linux驱动由浅入深系列:高通sensor架构实例分析之一(整体概览+AP侧代码分析) linux驱动由浅入深系列:高通sensor架构实例分析之二(adsp驱动代码结构 ...

  10. 用Python实现数据结构之队列

    队列 队列与栈的类型很相似,但它遵循的原则是先进先出(FIFO),也就是元素插入的时候只能在该数据结构的末端,而删除只能删除最前面的元素.队列同样应用广泛,例如打印机的队列或者是一个web服务器响应请 ...