Làm th? nào đ?: T?o và s? d?ng m?t t?p d? li?u nh?p b?ng cách s? d?ng Visual C#.NET

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 320714 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

Bài vi?t này cho b?n th?y làm th? nào đ? t?o và s? d?ng m?t đánh máy S? li?u trong m?t ?ng d?ng Web nh?. Đánh máy DataSets, mà k? th?a t? các S? li?u l?p, t?o ra các thành viên l?p h?c đ?u tiên c?a m?t S? li?uc?a DataTablesDataColumns, năng su?t l?i ích nhi?u mà đi kèm v?i vi?c s? d?ng cách g? m?nh m?.

Yêu c?u

Các m?c sau đây mô t? đư?c đ? ngh? ph?n c?ng, ph?n m?m, cơ s? h? t?ng m?ng, k? năng và ki?n th?c, và gói d?ch v? mà b?n c?n ph?i có đ? hoàn thành các bư?c sau:
  • Microsoft SQL Server 6,5 (ho?c m?i hơn) v?i cơ s? d? li?u Northwind
Trư?c k? năng yêu c?u:
  • Chung quen v?i Microsoft SQL Server
  • Chung quen v?i Microsoft Visual Studio.NET
  • Chung quen v?i Microsoft ADO.NET
  • Chung quen v?i Microsoft.NET Web đi?u khi?n

Đánh máy DataSets

Th?c hi?n theo các bư?c sau đ? t?o ra m?t ?ng d?ng Web nh? b?ng cách s? d?ng Visual Studio.NET. ?ng d?ng Web s? d?ng m?t đánh máy S? li?u đ? hi?n th? các k?t qu? c?a m?t truy v?n SQL improvised trong cơ s? d? li?u Northwind.
  1. B?t đ?u Visual Studio.NET.
  2. T?o m?t d? án ?ng d?ng Web m?i đ?t tên TDS trong Visual C#.NET.
  3. H?y ch?c ch?n r?ng nhà thám hi?m gi?i pháp đư?c hi?n th?. N?u nhà thám hi?m gi?i pháp không đư?c hi?n th?, h?y nh?n CTRL + ALT + L.
  4. Đ?m b?o r?ng các t?p tin WebForm1.aspx đư?c m? trong c?a s? tr?nh so?n th?o. N?u t?p tin không ph?i là m?, b?m đúp vào WebForm1.aspx trong các gi?i pháp Explorer đ? m? t?p tin.
  5. Trong c?a s? so?n th?o, nh?p vào Thi?t k? đ? chuy?n sang thi?t k? xem.
  6. Đ? m? h?p công c?, b?m CTRL + ALT + X. Trong h?p công c?, nh?p Các h?nh th?c web. Ch?n và kéo sau đây đ? góc bên trái c?a trang: hai hàng m?i m?t nh?n theo sau là m?t h?p văn b?n (đư?c đ?nh v? ? bên ph?i c?a m?i nh?n). Dư?i đây, thêm m?t DataGrid trong cùng m?t cách.
  7. Nh?p vào nh?n hàng đ?u. Nh?n F4 đ? hi?n th? c?a s? Properties. Thay đ?i các B?t đ?ng s?n văn b?n đ? Sản phẩm. Nh?p vào nh?n khác, và sau đó thay đ?i c?a nó B?t đ?ng s?n văn b?n đ? Th? lo?i.
  8. Đ? thêm m?t m?i S? li?u các d? án, nh?n CTRL + SHIFT + A, và sau đó nh?p vào S? li?u trong danh sách m?u. Tên các S? li?u sau đây: dsProducts.xsd. Lưu ? r?ng t?p tin là th?c s? là m?t lư?c đ? XML. Nh?p vào Ok. Bây gi? b?n th?y m?t trang màu vàng nh?t trong c?a s? tr?nh so?n th?o.
  9. Đ? t?o ra m?t đánh máy S? li?u, nh?n CTRL + ALT + S đ? m? Explorer h? ph?c v?.
  10. Nh?p vào Các máy ch?, b?m tên máy tính, b?m SQLServers, b?m tên máy ch?, b?m Northwind, sau đó b?m Chế độ xem.
  11. Ch?n xem Northwind SQL Server Theo th? t? abc danh sách s?n ph?m, và sau đó kéo d?ng xem sang màu vàng nh?t S? li?u Trang. M?t đ?i di?n tr?c quan c?a b? k?t qu? đư?c t?o ra b?i quan đi?m xu?t hi?n trên trang. Đ? xem XML th?c t? cho lư?c đ? t?p, b?m các XML nút dư?i c?a s? so?n th?o.
  12. M?t lư?c đ? d?a trên m?t đ?i tư?ng SQL Server bây gi? t?n t?i. T?o ra và đi?n vào m?t đánh máy S? li?utrư?c tiên b?n ph?i t?o ra l?p ánh x? t?i gi?n đ?. Nh?p chu?t ph?i vào quan đi?m thi?t k?, và sau đó h?y ch?c ch?n r?ng các T?o ra s? li?u tùy ch?n đư?c ch?n. N?u nó không đư?c ch?n, h?y ch?n nó. B?m CTRL + S đ? ti?t ki?m gi?n đ? và t?o ra các l?p h?c.
  13. Đ? xem các m?i g? S? li?u l?p, h?y nh?p vào Hi?n t?t c? các t?p trong Explorer gi?i pháp.
  14. M? r?ng cây bên c?nh dsProducts.xsd. B?n th?y m?t t?p tin dsProducts.vb, ch?a b?n đ? l?p m?i vào gi?n đ?. B?n c?ng th?y m?t t?p tin dsProducts.xsx, đư?c s? d?ng đ? theo d?i nh?ng thay đ?i đ? các t?p tin.
  15. Đ? vi?t m? đ? hi?n th? s? đánh máy S? li?u, b?m đúp vào tr?c ti?p trên các h?nh th?c Web (không ph?i trên m?t đi?u khi?n Web). M?u Web codebehind xu?t hi?n, và đi?m chèn là bên trong các Page_Load s? ki?n.
  16. Đ? bao g?m các l?p h?c n?m trong không gian tên System.Data.SqlClient, thêm dư?i đây b?ng cách s? d?ng n?i dung ? đ?u codebehind:
    using System.Data.SqlClient;
    					
    LƯU ?: Các không gian tên khác mà b?n c?n ph?i có cho ?ng d?ng Web nh? này s? t? đ?ng đư?c tham chi?u trong d? án khi b?n t?o m?t ?ng d?ng Web trong Visual Studio.NET.

  17. Trong các Page_Load th? t?c t? ch?c s? ki?n, t?o m?t đ?i tư?ng k?t n?i b?ng cách đi qua chu?i k?t n?i đ? m?c đ?nh nhà xây d?ng c?a các SqlConnection l?p:
    SqlConnection cn = new SqlConnection("server=myserver;uid=myuid;pwd=mypassword;database=northwind");
    					
  18. T?o m?t đ?i tư?ng SqlCommand sau đó thông qua các đ?i tư?ng SqlDataAdapter. Vư?t qua m?t l?nh SQL improvised và các đ?i tư?ng k?t n?i m?i cho các nhà xây d?ng SqlCommand. B? c?u các CommandText tài s?n c?a đ?i tư?ng SqlCommand m?i. B?n c?ng có th? vư?t qua tên c?a m?t th? t?c đư?c lưu tr?.
    SqlCommand cmd = new SqlCommand("select * from [Alphabetical list of products]", cn);
    					
  19. T?o m?t th? hi?n c?a đ?i tư?ng SqlDataAdapter, đi qua các đ?i tư?ng SqlCommand m?i v?i các nhà xây d?ng:
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    					
  20. Bây gi? b?n t?o các đ?i tư?ng đư?c yêu c?u đ? k?t n?i v?i cơ s? d? li?u và tr? l?i d? li?u. Đây là m? cho s? đánh máy S? li?u. Lưu ? r?ng m?t th? hi?n c?a các dsProducts l?p h?c đư?c t?o ra: các l?p h?c mà ánh x? t?i dsProducts lư?c đ? và th?a hư?ng t? các S? li?u l?p h?c, không dùng chung S? li?u l?p h?c riêng c?a m?nh.
    dsProducts tds = new dsProducts();
    					
  21. G?i cho các L?p đ?y phương pháp SqlDataAdapter, đi qua trong các đánh máy S? li?u đ?i tư?ng và các S? li?uc?a đánh máy DataTable TableName b?t đ?ng s?n:
    da.Fill(tds, tds.Tables[0].TableName);
    					
  22. Đ? thi?t l?p các Văn b?n tài s?n c?a ki?m soát h?p văn b?n đ? các c?t m?nh m? đánh máy trong các đánh máy S? li?uc?a DataTable, s? d?ng đ?nh d?ng sau:
    dsProducts.DataTableName[RowIndex].ColumnName
    						
    Đ?i v?i ?ng d?ng m?u này, RowIndex là khó m? hoá đ? 5:
    TextBox1.Text = tds.Alphabetical_list_of_products[5].ProductName;
    TextBox2.Text = tds.Alphabetical_list_of_products[5].CategoryName; 
    						
    B?i v? các Các hàng b? sưu t?p là Zero, khi t?i trang, lưu ? r?ng h?p văn b?n ki?m soát hi?n th? tên s?n ph?m và th? lo?i c?a các m?c trong hàng th? sáu c?a các DataGrid.
  23. Đ? hi?n th? t?t c? các k?t qu? trong các DataGrid, đ?t các DataSource tài s?n c?a DataGrid đ? m?i g? S? li?u, và g?i DataBind():
    DataGrid1.DataSource = tds;
    DataGrid1.DataBind();
    					

Hoàn thành m? danh sách (WebForm1.aspx)

<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="TDS.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
	<title>WebForm1</title>
	<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
	<meta name="CODE_LANGUAGE" Content="C#">
	<meta name="vs_defaultClientScript" content="JavaScript">
	<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
	<form id="Form1" method="post" runat="server">
		<asp:Label id="Label1"  runat="server" >Label</asp:Label>
		<asp:DataGrid id="DataGrid1"  runat="server" ></asp:DataGrid>
		<asp:TextBox id="TextBox2"  runat="server"></asp:TextBox>
		<asp:TextBox id="TextBox1"  runat="server"></asp:TextBox>
		<asp:Label id="Label2"  runat="server" >Label</asp:Label>
	</form>
</body>
</HTML>
				

Hoàn thành m? danh sách (WebForm1.aspx.cs)

using System.Data.SqlClient;

namespace TDS
{
  /// <summary>
  /// Summary description for WebForm1.
  /// </summary>
  public class WebForm1 : System.Web.UI.Page
  {
    protected System.Web.UI.WebControls.Label Label1;
    protected System.Web.UI.WebControls.Label Label2;
    protected System.Web.UI.WebControls.TextBox TextBox1;
    protected System.Web.UI.WebControls.TextBox TextBox2;
    protected System.Web.UI.WebControls.DataGrid DataGrid1;
	
    private void Page_Load(object sender, System.EventArgs e) 
    {
	SqlConnection cn = new SqlConnection("server=localhost;uid=sa;pwd=abcd;database=northwind");
	SqlCommand cmd = new SqlCommand("select * from [Alphabetical list of products]", cn);
	SqlDataAdapter da = new SqlDataAdapter(cmd);
	dsProducts tds = new dsProducts();

	da.Fill(tds, tds.Tables[0].TableName);
	TextBox1.Text = tds.Alphabetical_list_of_products[5].ProductName;
	TextBox2.Text = tds.Alphabetical_list_of_products[5].CategoryName; 

         DataGrid1.DataSource = tds;
	DataGrid1.DataBind();

    }

    #region Web Form Designer generated code
    override protected void OnInit(EventArgs e)
    {
	// 
	// CODEGEN: This call is required by the ASP.NET Web Form Designer.
	// 
	InitializeComponent();
	base.OnInit(e);
    }
		
    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InitializeComponent()
    {    
	this.TextBox1.TextChanged += new System.EventHandler(this.TextBox1_TextChanged);
	this.Load += new System.EventHandler(this.Page_Load);

    }
    #endregion
  }
}

				

M? xác nh?n

Nh?n F5 đ? ch?y các ?ng d?ng Web. Tr?nh duy?t hi?n th? "Bác Bob h?u cơ khô Lê" trong các Sản phẩm h?p văn b?n và "S?n xu?t" trong các Th? lo?i h?p văn b?n. DataGrid là đ?y thông tin s?n ph?m xu?t hi?n dư?i h?p văn b?n.

Khắc phục sự cố

  • Chung chung DataSets không yêu c?u b?n vư?t qua m?t TableName khi b?n g?i các L?p đ?y phương pháp. Đánh máy DataSets, tuy nhiên, yêu c?u này, ngay c? khi b?n đang truy c?p vào các S? li?uc?a B?ng b? sưu t?p c?a danh m?c thay v? các TableName. S? th?t b?i đ? vư?t qua s? đánh máy S? li?uc?a TableName ném m?t l?i "Không có hàng không ? v? trí 0" lúc ch?y. Yêu c?u này c?a đánh máy DataSets c?ng có ngh?a là b?n không th? t?o nên riêng c?a b?n TableName nhưng b?n ph?i vư?t qua m?t trong đó đư?c tham chi?u trong các đánh máy S? li?u l?p h?c, đó truy c?p như trong m? trư?c.
  • B?t k? hư?ng d?n s? d?ng nh?ng thay đ?i b?n th?c hi?n cho gi?n đ? đư?c t?o ra b?i Visual Studio.NET ghi đè N?u b?n thay đ?i các đ?i tư?ng cơ s? d? li?u mà b?n s? d?ng ban đ?u đ? t?o ra gi?n đ? và g? S? li?u l?p và kéo nó m?t l?n n?a vào gi?n đ? c?a thi?t k? xem. Đó là nói chung thích h?p hơn đ? th?c hi?n nh?ng thay đ?i mà b?n đ? đ? ? c?p đ? Microsoft SQL Server và đ? t?o ra m?t m?i g? S? li?u hơn đ? thay đ?i lư?c đ? k?t qu?.

THAM KH?O

Cho bi?t thêm thông tin v? làm vi?c v?i m?t đánh máy S? li?u, xem Web site sau c?a Microsoft:
http://msdn2.Microsoft.com/en-US/Library/esbykkzb (vs.71) .aspx


Thu?c tính

ID c?a bài: 320714 - L?n xem xét sau cùng: 27 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft ADO.NET 1.1
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
T? khóa: 
kbhowtomaster kbmt KB320714 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:320714

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com