使ASP.NET中的數據庫操作變得簡單
2006/9/30 11:02:00
ASP.NET中一般都是使用SQL Server作為后臺數據庫。一般的ASP.NET數據庫操作示例程序都是使用單獨的數據訪問,就是說每個頁面都寫連接到數據庫,存取數據,關閉數據庫的代碼。這種方式帶來了一些弊端,一個就是如果你的數據庫改變了,你必須一個頁面一個頁面的去更改數據庫連接代碼。
第二個弊端就是代碼冗余,很多代碼都是重復的,不必要的。
因此,我試圖通過一種一致的數據庫操作類來實現ASP.NET種的數據訪問。
我們就拿一般網站上都會有的新聞發布系統來做例子,它需要一個文章數據庫,我們把這個數據庫命名為 News_Articles。新聞發布系統涉及到 發布新聞,展示文章,管理文章等。
一篇文章一般都會有標題,作者,發表時間,內容,另外我們需要把它們編號。我們把它寫成一個類,叫 Article 類,代碼如下:
//Article.cs
using System;
namespace News_Articles.Data
{
///
/// Summary description for Article.
///
public class Article
{
private int _id; //文章編號
private string _author; //文章的作者
private string _topic; //文章的標題
private DateTime _postTime; //文章的發表時間
private string _content; //文章內容
public int ID
{
get { return _id;}
set { _id = value;}
}
public string Author
{
get { return _author; }
set { _author = value; }
}
public string Topic
{
get { return _topic; }
set { _topic = value; }
}
public string Content
{
get { return _content; }
set { _content = value; }
}
public DateTime PostTime
{
get { return _postTime; }
set { _postTime = value; }
}
}
}
然后我們寫一個文章集合類 ArticleCollection
代碼如下
程序代碼
//ArticleCollection.cs
using System[color=#0000ff];
using System.Collections;
namespace News_Articles.Data
{
///
/// 文章的集合類,繼承于 ArrayList
///
public class ArticleCollection : ArrayList
{
public ArticleCollection() : base()
{
}
public ArticleCollection(ICollection c) : base(c)
{
}
}
}[/color]
這個類相當于一個ASP.NET中的DataSet(其實兩者很不一樣),很簡單,主要的目的是把將很多篇文章集合,以便在ASP.NET頁面中給DataGrid或者DataList作為數據源,以顯示文章。
現在我們可以實現對News_Articles數據庫的操作了,我說過,這是一個數據庫操作類。不妨命名為 ArticleDb。實現如下:
程序代碼
//ArticleDb.cs
using System;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
namespace News_Articles.Data
{
/**////
/// 數據庫操作類,實現文章數據庫的讀取,插入,更新,刪除
///
public class ArticleDb
{
private SqlConnection _conn; //SQL Server 數據庫連接
private string _articledb = "News_Articles"; //SQL Server 文章數據庫表
/**////
/// 類的初始化,設置數據庫連接
///
public ArticleDb()
{
_conn = new SqlConnection(ConfigurationSettings.AppSettings["connectionString"]);
}
/**////
/// 打開數據庫連接
///
public void Open()
{
if(_conn.State == ConnectionState.Closed)
_conn.Open();
}
/**////
/// 關閉數據庫連接
///
public void Close()
{
if(_conn.State == ConnectionState.Open)
_conn.Close();
}
/**////
/// 讀取數據庫中所有的 文章
///
/// ArticleCollection
public ArticleCollection GetArticles()
{
ArticleCollection articles = new ArticleCollection();
string sql
下一頁
返回列表
返回首頁
主站蜘蛛池模板:
啊啊啊好深视频|
国内精品伊人久久久久影院对白|
久久精品视频免费看|
欧美黑人性暴力猛交喷水|
卡一卡2卡3卡精品网站|
青青草在视线频久久|
国产真实乱子伦视频播放|
97久久精品人妻人人搡人人玩
|
日本久久久久亚洲中字幕|
亚洲人成人77777在线播放|
波多洁野衣一二区三区|
天堂网www在线资源|
中文字幕丰满乱孑伦无码专区|
明星造梦一区二区|
亚洲欧美中文日韩欧美|
狠狠色综合色区|
动漫毛片在线观看|
色婷婷综合久久久久中文字幕|
国产成人免费高清激情明星|
18videosex日本vesvvnn|
在线播放国产视频|
jizz老师喷水|
思思99re66在线精品免费观看|
久久91精品国产91久久麻豆
|
四虎澳门永久8848在线影院|
韩国免费高清一级毛片性色|
国产成人精品福利色多多|
中国大白屁股ass|
国产自产在线视频一区|
99国产精品免费视频观看|
好男人www视频|
中文字幕亚洲区|
日本一区高清视频|
久久伊人色综合|
日韩欧美成人免费中文字幕|
亚洲AV网址在线观看|
欧美人与动人物牲交免费观看|
亚洲成年人影院|
欧美特黄高清免费观看的|
亚洲精品国产高清嫩草影院|
特黄特色大片免费播放器999|