简单-三层-存储过程-增删改《一》


明天就要可以见到亲爱的老婆啦,很高兴,写下这篇文章,可能有点长,希望对大家有帮助,也是记录自己。

第一,用VS2010新建一个空空的网站,什么都没有。

准备工作:在这里,测试连接数据成功与否,我通常用下面的代码,如果谁有比较好的方式希望能教教我。

(1)必须添加2个命名空间:

using System.Data;          
using System.Data.SqlClient;

这里呢我用的SQL SERVER2005.

(2)这里是在load里面添加的代码:

SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=");
try
{
conn.Open();
if (conn.State == ConnectionState.Open)
{
Response.Write("数据库连接成功!");
}
}
catch (Exception ee)
{
Response.Write(ee.Message);
}
finally {
conn.Close();
}

通过准备后,显示

这样连接数据库的工作就完成了。(多说一句,关于数据库要好好学学

(3)<1>其实,在开发过程当中,数据库连接语句一般都会写在配置文件当中,下面看一下我测试的几个方法:

<?xml version="1.0"?>
<!--
有关如何配置 ASP.NET 应用程序的详细信息,请访问
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<compilation debug="false" targetFramework="4.0" />
</system.web>
<!--<connectionStrings>
<add name="ConnectionString" connectionString="server=.;database=cs;uid=sa;pwd=" providerName="System.Data.SqlClient"/>
</connectionStrings>-->
<appSettings>
<add key="ConnectionString" value="server=.;database=cs;uid=sa;pwd="/>
</appSettings>
</configuration>

 

上面的是web.config。

这里面有2个连接语句注意看下,分别对应前台的连接语句:

//SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=");
//SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ConnectionString"].ToString());
try
{
conn.Open();
if (conn.State == ConnectionState.Open)
{
Response.Write("数据库连接成功!");
}
}
catch (Exception ee)
{
Response.Write(ee.Message);
}
finally {
conn.Close();
}

2次测试都是数据库连接成功!
<2>

<1>里面用的是默认的配置文件,下面我介绍一下xml获取任何节点:(一会会有目的的

1.1新添加一个xml文件,如下图

1.2代码:

<?xml version="1.0" encoding="utf-8" ?>
<PrintSetting>
<SQL_CONN>Data Source=(local);Initial Catalog=cs;Persist Security Info=True;User ID=sa;pwd=;</SQL_CONN>
</PrintSetting>

 

1.3页面代码:别忘记了加system.xml;

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Data;
using System.Data.SqlClient;
using System.Xml;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=");
//SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
//SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ConnectionString"].ToString());
XmlDocument xDoc = new XmlDocument();
xDoc.Load(Server.MapPath("XMLFile.xml"));
SqlConnection conn = new SqlConnection(xDoc.SelectSingleNode("PrintSetting/SQL_CONN").InnerText);
try
{
conn.Open();
if (conn.State == ConnectionState.Open)
{
Response.Write("数据库连接成功!");
}
}
catch (Exception ee)
{
Response.Write(ee.Message);
}
finally {
conn.Close();
}
}
}

测试成功,为了能够连接不同的数据库,如果不只是sql的情况下,怎么办呢?

<3>
先看一下我修改的xml文件的代码:

 

<?xml version="1.0" encoding="utf-8" ?>
<PrintSetting>
<PrintSettings name="zong">
<database name="1">
<SQL_CONN>Data Source=(local);Initial Catalog=cs;Persist Security Info=True;User ID=sa;pwd=;</SQL_CONN>
</database>
<database name="2">
<SQL_CONN>Data Source=(local);Initial Catalog=c;Persist Security Info=True;User ID=sa;pwd=;</SQL_CONN>
</database>
</PrintSettings>
</PrintSetting>

 


再看一下我前边页面的代码:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Data;
using System.Data.SqlClient;
using System.Xml;

public partial class _Default : System.Web.UI.Page
{
public static string aa;
protected void Page_Load(object sender, EventArgs e)
{
//SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=");
//SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
//SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ConnectionString"].ToString());
XmlDocument xDoc = new XmlDocument();
xDoc.Load(Server.MapPath("XMLFile.xml"));
//SqlConnection conn = new SqlConnection(xDoc.SelectSingleNode("PrintSetting/SQL_CONN").InnerText);
XmlNodeList nodes1 = xDoc.GetElementsByTagName("PrintSettings");
foreach (XmlNode node1 in nodes1) //第一层
{
//TextBox1.Text = node1.ToString();
if (node1.Attributes["name"].Value == "zong")
{
XmlNodeList nodes2 = node1.ChildNodes;

foreach (XmlNode node2 in nodes2)//第二层nodes1
{
if (node2.Attributes["name"].Value == "1")
{
aa = node2["SQL_CONN"].InnerText;
//TextBox1.Text = aa;
}
}
}
}
SqlConnection conn = new SqlConnection(aa);
try
{
conn.Open();
if (conn.State == ConnectionState.Open)
{
Response.Write("数据库连接成功!");
}
}
catch (Exception ee)
{
Response.Write(ee.Message);
}
finally {
conn.Close();
}
}
}

textbox是我为了测试取出来的值!值得注意在xml文件里面大小写是区分的!
马上要陪我妹妹去吃火锅了,明天在写其他的,我以后面试都可能用得着,嘿嘿!

总结:当你写下东西的时候,要多去想,多去实践!

 

 

 

posted on 2011-12-21 18:27  daywrite  阅读(705)  评论(2)    收藏  举报

导航