ASP.NET: Tạo lớp kết nối CSDL trong ASP.NET

ASP.NET: Tạo lớp kết nối CSDL trong ASP.NET

Việc tạo lớp (class) kết nối cơ sở dữ liệu rất có lợi, ta có thể tiết kiệm thời gian viết lại chuỗi kết nối cơ sở dữ liệu nhiều lần, lúc sửa lại Server hay CSDL thì ta không phải đến từng trang một mà chỉ cần sửa trực tiếp trên chuỗi kết nối là được.

Thêm Class kết nối
Khi đã tạo dự án (project) website bằng Visual Studio vào menu Solution Explorer tạo một đối tượng (item) mới là Class đặt tên là dataProvider.cs

Khai báo thư viện và khởi tạo các biến
Việc đầu tiên là mở dataProvider.cs khai báo thư viện, mình sử dụng kết nối bằng SQL nên khai báo thư viện System.Data.SqlClient ngoài ra còn sử dụng các Data như: dataset, datatable… nên khai báo thêm: System.Data.


using System.Data.SqlClient;
using System.Data;
Phía dưới dòng public class dataProvider bạn khai báo các biến sẽ được sử dụng trong class kết nối cơ sở dữ liệu này.




SqlConnection con;
SqlDataAdapter da;
DataSet ds;
SqlCommand cmd;
Giải thích:
  • SqlConnection: Dùng để kết nối vào cơ sở dữ liệu
  • SqlDataAdapter: Là đối tượng trung gian lấy dữ liệu FIll vào trong các đối tương Data
  • DataSet: Kho chứa dữ liệu tạm thời để xử lý
  • SqlCommand: Các xử lý truy vấn SQL thêm, xóa, sửa
Tiếp đến bạn khởi tạo kết nối bằng cách sau:

public void conncet(){ 
if (con == null)
        con = new SqlConnection("server=.; database=bcdonlinesv; integrated security = true;");
    if (con.State == ConnectionState.Closed)
        con.Open();
}

Nếu connection là null thì mới tạo kết nối, và trạng thái kết nối là đóng thì ta sẽ mở nó lên. Sau đó mình thực hiện việc đóng kết nối như sau:
public void disconnect()
{
    if ((con != null) && (con.State == ConnectionState.Open))
        con.Close();
}
Nếu connection là null và trang thái là mở thì mình sẽ đóng lại.
Hàm lấy dữ liệu (get data) trong Class kết nối
Mình phân ra hai nhóm một là lấy dữ liệu lên, hai là xử lý command còn gọi là ExeCuteNonQuery. Cách bạn lấy dữ liệu từ một chuỗi kết nối và truy vấn get sau đó đổ vào DataSet và tiến hành các xử lý.

public DataSet get(string sql)
{
    conncet();
    da = new SqlDataAdapter(sql, con);
    ds = new DataSet();
    da.Fill(ds);
    disconnect();
    return ds;
}

Đây sẽ trả về là kiểu DataSet.
Hàm xử lý Thêm, sửa, xóa trong Class kết nối
Bạn thấy các công việc thêm xóa sửa trong database chỉ khác nhau chổ truy vấn SQL nên ta sẽ gom chung nó vào một hàm. Cách bạn khai báo như sau:

public void ExeCuteNonQuery(string sql)
{
    conncet();
    cmd = new SqlCommand(sql, con);
    cmd.ExecuteNonQuery();
    disconnect();
}


Demo sử dụng các tính năng bằng lớp kết nối CSDL
Bây giờ chúng ta sẽ sử dụng class kết nối cơ sở dữ liệu vừa tạo thực hiện các thao tác lấy dữ liệu, thêm xóa sửa. 
1. Tính năng lấy dữ liệu.


dataProvider data = new dataProvider(); // Khởi tạo đối tượng từ class


Sử dụng được class phải có đối tượng ở đây mình khai báo là data. Sau đó tạo hàm load database.

private void load_data()
{
    string sql = "select * from taikhoan";
    gvTaiKhoang.DataSource = data.get(sql).Tables[0];
    gvTaiKhoang.DataBind();
}

Tiếp đến bạn load data khi gọi PageLoad.


protected void Page_Load(object sender, EventArgs e)
{

    if (!IsPostBack)
        load_data();
}


2. Demo tính năng Insert sử dụng Class kết nối.
Các tính năng như Insert, Update Delete gần như là tương tự nhau.
Click vào nút insert khai báo như sau:


protected void btInsert_Click(object sender, EventArgs e) {
        string sql = "insert into taikhoan(username,pass) values('" + txtU.Text + "','" + mahoa(txtP.Text) + "')";
        data.ExeCuteNonQuery(sql);
        load_data();
}


Xem chi tiết

Cài đặt: Hướng dẫn cài đặt Visual Studio 2010 (hình ảnh)

Cài đặt: Hướng dẫn cài đặt Visual Studio 2010 (hình ảnh)
Bước 1: Click đúp vào file setup trong thư mục chứa bộ cài đặt (trong ổ cứng hoặc đĩa DVD chương trình). Màn hình lựa chọn cài đặt hiển thị, chọn Install Microsoft Visual Studio 2010
Bước 2: Chương trình sẽ giải nén bộ cài đặt để sẵn sàng cho việc cài đặt. Bạn sẽ nhìn thấy màn hình lựa chọn như bên dưới.
Bước 3: Chọn Next
Bước 4. Chương trình sẽ tự động cài đặt một số ứng dụng phục vụ cho việc cài đặt Visual Studio. Bạn chọn I have read and accept the license terms và điền tên sử dụng vào phần Name (như hình trên). Chọn next để tiếp tục.
Bước 5. Lựa chọn ngôn ngữ cài đặt bằng cách chọn các ô checkbox bên trái. Sau đó chọn nơi sẽ cài đặt vào, mặc định ở ổ C:\Program Files\......Chọn Install để sang bước tiếp theo
Bước 6. Bạn lựa chọn chi tiết hơn các công cụ, ngôn ngữ cài đặt như hình trên bằng cách đánh dấu vào các ô checkbox. Nhấn install để chương trình bắt đầu tự động cài đặt.
Bước 7. Quá trình cài đặt diễn ra, chương trình sẽ tự động cài đặt các phần mềm, ứng dụng hỗ trợ trước khi cài đặt Visual Studio 2010 (hình trên)
Sau khi cài đặt xong, màn hình sẽ hiển thị thông báo như hình trên. Bạn chọn Finish để hoàn thành.

Xem chi tiết

Cài đặt: Hướng dẫn cài đặt Visual Studio 2008 (hình ảnh)

Cài đặt: Hướng dẫn cài đặt Visual Studio 2008 (hình ảnh)
Bước 1: Mở thư mục chứa tệp visual2008.iso –> Nháy phải chuột vào tên tệp –> Chọn PowerISO –> Chọn Mount Image to Drive ….(Bước này có thể bỏ qua nếu chúng ta có bộ cài từ DVD hoặc trong một thư mục)

Bước 2: Mở ổ đĩa DVD (Ví dụ ổ F:) –> Nháy đúp chuột vào tệp chương trình cài đặt
Bước 3: Chọn Install Visual Studio 2008 

–> Chọn Next để bắt đầu cài đặt

Bước 4: Chọn I have read and accept the license terms –> Gõ vào mục Name (Tên người dùng) –> Chọn Next 

Bước 5: Chọn hình thức cài đặt
- Default: Cài đặt theo mặc định của nhà sản xuất
- Full: Cài đặt đầy đủ các thành phần của VS2008
- Custom: Cài đặt theo lựa chọn của người dùng
–> Chọn Next

–> Chọn hoặc bỏ chọn các thành phần bằng cách đánh dấu tick trước các lựa chọn –> Chọn Install để bắt đầu cài đặt

–> Chờ cho đến khi máy cài đặt xong –> Chọn Finish




Xem chi tiết

Cài đặt: Hướng dẫn cài đặt Visual Studio 2005 (hình ảnh)

Cài đặt: Hướng dẫn cài đặt Visual Studio 2005 (hình ảnh)
Bước 1: Đưa đĩa DVD vào ổ đĩa của máy tính, nếu Autorun được bật, quá trình cài đặt sẽ hiển thị các lựa chọn trên màn hình. Ngược lại, các bạn phải click vào file Setup trong bộ cài để cài đặt bằng tay. Màn hình lựa chọn cài đặt xuất hiện như hình dưới, lựa chọn Instal Visual Studio để bắt đầu quá trình cài đặt:
Bước 2: Quá trình này sẽ copy các file cài đặt cần thiết vào 1 thư mục tạm vào tiến trình cài đặt bắt đầu
Bước 3: Sau khi chương trình cài đặt copy xong các file cần thiết, màn hình Start Page xuất hiện :
- Danh sách các chương trình cần thiết phải cài đặt trước khi cài Visual Studio 2005 (tự động cài)
- Click chuột vào lựa chọn đồng ý với các điều khoản của Microsoft
- Lựa chọn tên trong phần Your Name: phần này tùy chọn
Sau đó chọn nút Continue để sang bước tiếp theo


Bước 4: Tại trang Option Page này, bạn lựa chọn ngôn ngữ lập trình và các công cụ cần thiết cài đặt bên phía trái bằng cách click chọn vào các ô check box. Phần bên phải bạn lựa chọn vị trí sẽ cài đặt VS 2005 vào (mặc định ở ổ C). Sau đó nhấn Install để quá trình cài đặt bắt đầu.

Bước 5: Tại trang Install Page, quá trình cài đặt diễn ra khoảng 25 - 40 phút tùy cấu hình máy tính của bạn. 

Xem chi tiết

HTML: Tạo Frame sử dụng ngôn ngữ HTML

HTML: Tạo Frame sử dụng ngôn ngữ HTML
1.1. KHÁI QUÁT VỀ FRAME
- Có thể phân chia một trang thành các khung, cho phép người truy cập cùng một lúc có thể xem nhiều trang mà không cần cuộn màn hình, mỗi khung chứa một trang Web riêng.
- Nếu tài trang sử dụng Frame thì không sử thẻ Body
1.2. CÁCH TẠO MỘT FRAME LAYOUT
<HTML>
<HEAD>
                  <TITLE>Page Title</TITLE>
</HEAD>
<FRAMESET>
                  Frame Definitions
</FRAMESET>
</HTML>
1.2.1. Các dạng frame : Thẻ <FRAMESET> có 2 thuộc tính ROWS và COLS
            a) Tạo frame theo dòng
Cú pháp:
<HTML>
<HEAD><TITLE>Nội dung tiêu đề</TITLE></HEAD>
<Frameset Rows=”a, b…” >
<Frame name=”Name1” Src=”Content1.htm>
<Frame name=”Name2” Src=”Content2.htm>
…..
<Frame name=”Name_n” Src=”Content_n.htm>
</Frameset>
</HTML>
Trong đó: a, b: là độ cao của các dòng thứ 1, thứ 2 …, có thể tính bằng pixel hoặc bằng %
Name: tên khung, (xác định chức năng của khung)
Content.htm: địa chỉ trang web xuất hiện đầu tiên trong khung
Ví dụ:
<HTML>
<HEAD><TITLE>Frame</TITLE></HEAD>
<Frameset Rows=20%, 60%, 20%  >
<Frame name=”Head” Src=”head.htm>
<Frame name=”Content1” Src=”Content1.htm>
<Frame name=”Content2” Src=”Content2.htm>
</Frameset>
</HTML>
b) Tạo frame theo cột
Cú pháp:
<HTML>
<HEAD><TITLE>Nội dung tiêu đề</TITLE></HEAD>
<Frameset Cols=”a, b…” >
<Frame name=”Name1” Src=”Content1.htm>
<Frame name=”Name2” Src=”Content2.htm>
…..
<Frame name=”Name_n” Src=”Content_n.htm>
</Frameset>
</HTML>
Ví dụ:
<HTML>
<HEAD><TITLE>Frame</TITLE></HEAD>
<Frameset Cols=30%, 30%, *  >
<Frame name=”Baner” Src=”head.htm>
<Frame name=”Content1” Src=”Content1.htm>
<Frame name=”Content2” Src=”Content2.htm>
</Frameset>
</HTML>
1.2.2 Các thuộc tính của Frame:
a) Noresize: Không đổi kích thước
b) Scrolling: có/không có thanh cuộn
Auto: Xuất hiện thanh cuộn khi nội dung dài
Yes: luôn xuất hiện thanh cuộn
No: không xuất hiện thanh cuộn
Ví dụ:
<frameset rows="80,*" cols="*" frameborder="NO" border="0" >
                       <frame noresize src="topFrame" scrolling="NO" >
<frame noresize src="leftFrame" scrolling="NO" >
 </frameset>
c) Frameborder: đường viền của khung mặc định là 1, muốn giữa các khung không còn đường viền thì trong tag Frameset nhập thêm Border=0,
d) Marginwidth:  hiệu chỉnh khoảng cách từ nội dung đến lề trái và phải của khung (tính bằng pixel)
e) Marginheight: hiệu chỉnh khoảng cách từ nội dung đến lề trên  và dưới của khung (tính bằng pixel) 
1.2.3. Các frame lồng nhau:
<Frameset >
<Frame name=”name” src=”Page.htm”>
<Frameset>
<Frame name=”name” src=”Page.htm”>
</Frameset>
</Frameset>
1.2.4. Liên kết frame:
Trang đầu tiên của khung được chỉ ra trong thuộc tính SRC, ta có thể chỉnh các trang khác cùng xuất hiện trong khung đó bằng cách chỉ ra vị trí trang đích. Tại trang muốn tạo liên kết với khung, ta nhập cú pháp:
<a Href=”Page.htm Target=”name”>
Nhãn mục liên kết
</a>
Trong đó :
Target=Name : tên của khung mà trang muốn liên kết đến trong tag <Frame>
Page.htm: trang hiển thị trong khung liên kết
Thẻ <Base>Nếu có nhiều liên kết đến các trang xuất hiện trong cùng một khung thì thuộc tính target mặc định đặt  trong tag <Base>
<head>
<Base target=”name”>        
<a href=”URL”>Nhãn liên kết</a>
</head>

Ví dụ
: Thiết kế trang web như sau:

            Cách thực hiện:
Trang chính: Chia trang thành 3 khung: topframe, leftframe và mainframe. Trang Photo.htm đặt trong left frame, logo.htm đặt trong Topframe, Bester.htm, DuMont.htm, Jacobs.htm đặt trong mainframe
<HTML>
<HEAD><TITLE>Staff of The Colorado Experience</TITLE>
<FRAMESET ROWS="60,*">
            <!--- Company logo --->
<FRAME SRC="Logo.htm" marginheight=1 noresize scrolling=NO name=Topframe>
            <!--- Nested frames --->
            <FRAMESET COLS="140,*">
            <!--- A list of staff photos --->
                        <FRAME SRC="Photos.htm" NAME=Leftframe>
                        <!--- Individual staff biographies --->
                        <FRAME SRC="Bester.htm" NAME=Mainframe>
            </FRAMESET>
</FRAMESET>
</HEAD>
</HTML>

Trong đó các trang Logo.htm, Photos.htm, Bester.htm phải được tạo trước
Photos.htm
<HTML>
<HEAD><TITLE>Staff hypertext links</TITLE>
<BASE TARGET=Mainframe>
</HEAD>
<BODY>
<CENTER>
<A HREF="Bester.htm"><IMG SRC="Bester.jpg" width=75 height=101> <BR> Jeff Bester</A><BR><BR>
<A HREF="DuMont.htm"><IMG SRC="DuMont.jpg" width=75 height=101>
<BR> Brian DuMont</A><BR><BR>
<A HREF="Jacobs.htm"><IMG SRC="Jacobs.jpg" width=75 height=101><BR>
Dennis Jacobs</A><BR><BR>
</CENTER>
</BODY>
</HTML>


Bester.htm
<HTML>
<HEAD><TITLE>Jeff Bester</TITLE></HEAD>
<BODY>
<IMG SRC="Bester2.jpg" WIDTH=90 HEIGHT=125 ALIGN=LEFT>
<FONT SIZE=2>
<TABLE>
<TR>
<TD VALIGN=TOP><B>Name:</B></TD>
<TD VALIGN=TOP>Jeff Bester</TD>
</TR>
<TR>
<TD VALIGN=TOP><B>Age:</B></TD>
<TD VALIGN=TOP>37</TD>
</TR>
<TR>
<TD VALIGN=TOP><B>Experience:</B></TD>
<TD VALIGN=TOP>Twelve years climbing. Three years with The Colorado Experience</TD>
</TR>
<TR>
<TD VALIGN=TOP><B>EMT:</B></TD>
<TD VALIGN=TOP>Yes</TD>
</TR>
</TABLE><BR CLEAR=LEFT>
Jeff has led routes in Yosemite, Eldorado, Mount Ranier and Rocky
Mountain National Park. He has participated in expeditions in Denali,
Mexico and Nepal. We are happy to welcome back Jeff for his fourth
year with The Colorado Experience. Jeff will be leading tours to Eldorado
Canyon.
</FONT>
<BODY>
</HTML> 


 Các trang DuMont.htm, Jacobs.htm cũng thiết kế tương tự.
Logo.htm

  <HTML>
<HEAD><TITLE>HEAD</TITLE></HEAD>
<BODY BACKGROUND="Mountain.jpg">
<IMG SRC="TCELogo.gif" WIDTH=550 HEIGHT=60>
</BODY>
</HTML>

 




Xem chi tiết

HTML: Thẻ tạo bảng trong thiết kế Web

HTML: Thẻ tạo bảng trong thiết kế Web

1. BẢNG (TABLE)
Bảng thường được sử dụng để tạo các văn bản nhiều cột hoặc phân chia trang thành nhiều vùng khác nhau rất tiện lợi trong thiết kế và trình bày trang web
Cú pháp:
<TABLE >
<TR>
<TD>Nội dung trong ô 1</TD>

 
<TD>Nội dung trong ô 2</TD>
<TD>Nội dung trong ô n</TD>
</TR>
<TR>
<TD>Nội dung trong ô 1</TD>



 
<TD>Nội dung trong ô 2</TD>
<TD>Nội dung trong ô n</TD>
</TR>
</TABLE>
- Thẻ <table> </table>: chỉ thị một bảng
- Thẻ <tr>……</tr>: xác định một dòng của bảng
Thẻ <td>……</td>: xác định một ô chứa dữ liệu của bảng. 
Ví dụ 1:
<HTML>
<HEAD>
<TITLE>TABLE</TITLE>
</HEAD>
<BODY >
<TABLE  border="1">
  <TR>
    <TD>Cell 1</TD>
    <TD>Cell 2</TD>

<TD>Cell 3</TD>
<TD>Cell 4</TD>
  </TR>
</TABLE>
</BODY>
</HTML>

Ví dụ 2:
<HTML>
<HEAD>
<TITLE>TABLE</TITLE>
</HEAD>
<BODY >
<table  border="1">
  <TR>
    <TD>Cell 1</TD>
  </TR>
  <TR>
    <TD>Cell 2</TD>
</TR>
<TR>
<TD>Cell 3</TD>
</TR>
<TR> 
<TD>Cell 4</TD>
  </TR>
</table>
</BODY>
</HTML> 
Ví dụ 3:
<HTML>
<HEAD>
<TITLE>TABLE</TITLE>
</HEAD>
<BODY >
<table  border="1">
  <TR>
    <TD>Cell 1</TD>
    <TD>Cell 2</TD>
  </TR>
  <TR>
 <TD>Cell 3</TD>
 <TD>Cell 4</TD>
  </TR>
</table>
</BODY>
</HTML>
2. CÁC THUỘC TÍNH:
2.1. Thuộc tính của bảng
a. Thêm khung viền:
<Table Border =n>…<Table>
n: độ dày của khung viền tính bằng Pixel
b. Định màu của khung viền và màu nền:
<Table BorderColor= “Color” BgColor=”Color”>…</Table>
c. Tạo bóng:
<Table BorderColorDark= “Color”> : Bóng đổ ở cạnh dưới và phải của bảng
<Table BorderColorLight= “Color”> : Bóng đổ cạnh trên trái của bảng
d. Định chiều rộng và chiều cao của bảng:
<Table Width =n height=m>, n là chiều rộng tính bằng Pixel
e. Canh lề bảng:
<Table Align= left/ right/ center>…</table>
f. Thuộc tính Cellpadding và CellSpacing:
<Table CellSpacing =”value”>: Khoảng cách giữa đường viền của các ô
<Table CellPadding=”Value”>: Khoảng cách giữa đường viền của ô với văn bản
g. Tag tiêu đề của Table:
<Caption> tiêu đề </Caption>
- Thẻ <Caption> nằm trong cặp Tag <Table>…</Table>
2.2. Thuộc tính của cột
a. Canh lề theo chiều ngang:
<Td Align=left/ right/center>…</Td>
b. Canh lề theo chiều đứng:
<Td Valign= Top/ Bottom/ Middle>…</Td>
c. Trộn ô:
                    <Td Colspan=n>: trộn n cột
                    <Td RowSpan=n>: trộn n dòng
d. Tag <th>:
Có tác dụng như <td> nhưng làm cho dữ liệu trong ô được in đậm và canh giữa
                    <tr>
                              <th> Nội dung </th>
                    </tr>    
Ví dụ:
<TABLE border=2>   
<tr>
<th> Cell 1 </th>
</tr>
<tr>
<th> Cell 2 </th>
</tr>
<TABLE>

Ví dụ:
<HTML>
<HEAD>
<TITLE>TABLE</TITLE>
</HEAD>
<BODY >
<table  border="5" CellSpacing =10 BorderColorDark=red width=50%>
  <TR>
    <TD>Cell 1</TD>
    <TD>Cell 2</TD>
  </TR>
  <TR>
 <TD>Cell 3</TD>
 <TD>Cell 4</TD>
  </TR>
</table>
</BODY>
</HTML>

Ví dụ:
<Table border="1" bgcolor= “fuschia” bordercolor=”red”  align=”center” Width=50% Height=30%>
<caption> Properties of Table</caption>
<tr>
            <th  colspan="3"> Colspan</th>
</tr>
<tr>
<th  Rowspan=”2”> Rowspan</th>
<td  align=center>Cell 1</td>
<td  align=center>Cell 2</td>
</tr>
<tr>
 <td align=center> Cell 3</td>
 <td align=center> Cell 4</td>
      </tr>
</table>

Ví dụ: Thiết kế một trang web như mẫu   
       
<html>
<head>
            <title> Trinh bay trang</title>
</head>
<body>
<Table width="68%" height="135" border="1" cellspacing="0"  bordercolor="#990033">
  <tr>
            <th colspan="2" bgcolor="#FFCCFF">
<div align="center">Computer Model </div>
</th>
  </tr>
  <tr>
<td width="24%" height="98" valign="top">
<table width="100%" border="1" cellspacing="0">
                                    <tr>
                                                <td>Tin tuc</td>
                                    </tr>
                                    <tr>
                                                <td>Giai tri</td>
                                    </tr>
                                    <tr>
                                                <td>Quang cao</td>
                                    </tr>
                                    <tr>
                                                <td height="23">The thao</td>
                                    </tr>
                        </table>
</td>
<td width="76%" align="center">
<img src="../images/h2.jpg" width="106" height="92">
</td>
  </tr>
</table>
</body>
</html>
Xem chi tiết