NASıL YAPıLıR: Oluşturma ve Visual C# .NET kullanarak Typed DataSet kullan

Makale çevirileri Makale çevirileri
Makale numarası: 320714 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Bu makalede küçük bir Web uygulamasında yazılan bir DataSet oluşturulacağı ve kullanılacağı gösterilmiştir. DataSet, hangi DataSet, sınıfından yazılan bir DataSetDataTable ve güçlü yazma olanağını ile birlikte gelen birçok yararları oluşturan DataColumns, birinci üyeleri oluşturun.

Gereksinimler

Aşağıdaki öğeler, önerilen donanım, yazılım, ağ altyapısı, beceriler ve bilgi ve bu adımları tamamlayabilmeniz için olan hizmet paketlerini açıklamaktadır:
  • Microsoft SQL Server 6.5 (veya ilerisi) Northwind veritabanı
Önceki yeteneklerin gerekli:
  • Microsoft SQL Server ile genel benzerlik
  • Microsoft Visual Studio .NET ile genel benzerlik
  • Microsoft ADO.NET ile genel benzerlik
  • Microsoft .NET Web denetimleri ile genel benzerlik

Yazılan veri

Visual Studio. NET'i kullanarak, küçük bir Web uygulaması oluşturmak için şu adımları izleyin. Northwind veritabanındaki improvised SQL sorgusu sonuçlarını görüntülemek için DataSet yazılı bir Web uygulamasını kullanır.
  1. Visual Studio .NET'i başlatın.
  2. Visual C# .NET, TDS adlı yeni bir Web uygulaması projesi oluşturun.
  3. Solution Explorer'ın görüntülendiğinden emin olun. Solution Explorer görüntüleniyorsa, CTRL + ALT + N tuşlarına basın.
  4. WebForm1.aspx dosyası düzenleyici penceresinde açık olduğundan emin olun. Dosya açık değilse, WebForm1.aspx Solution Explorer'da dosyayı açmak için çift tıklatın.
  5. Altında Düzenleyicisi penceresinde, Tasarım görünümüne geçmek için Tasarım ' ı tıklatın.
  6. Araç kutusunu açmak için CTRL + ALT + X tuşlarına basın. Araç kutusunda, Web formları ' i tıklatın. Seçin ve aşağıdaki sayfanın sol üst köşesine sürükleyin: (her etiketin sağında konumlandırılmış) bir metin kutusunu ve ardından bir etiketin her iki satırları. Bunlar altında bir DataGrid aynı şekilde ekleyin.
  7. Üst etiket Ek Yardım düğmesini tıklatın. Özellikler penceresini görüntülemek için F4 tuşuna basın. Text özelliği için Ürün değiştirin. Diğer etiketini tıklatın ve sonra da denetimin Text özelliği için Kategori değiştirin.
  8. DataSet yeni bir projeye eklemek için CTRL + ÜST KRKT + A tuşlarına basın ve DataSet şablonlar listesinde tıklatın. Aşağıdaki DataSet adı: dsProducts.xsd. Dosya aslında bir XML şeması olduğunu unutmayın. Tamam ' ı tıklatın. Şimdi düzenleyici penceresinde Uçuk sarı bir sayfasına bakın.
  9. Yazılı bir DataSet yaratmak için <a0></a0>, Server Explorer'ı açmak için CTRL + ALT + S tuşlarına basın.
  10. Servers ' ı tıklatın, computer name ' nı tıklatın, SQLServers ' ı tıklatın, server name tıklatın, Northwind ' ı tıklatın ve sonra görünümler ' i tıklatın.
  11. Northwind SQL Server ürünleri alfabetik listesi görünümü seçin ve sonra da görünüm Uçuk sarı DataSet sayfaya sürükleyin. Görünüm tarafından oluşturulan sonuç kümesi görsel BIR temsilini sayfasındagörünür. Asıl XML şema dosyası için görmek için <a0></a0>, Düzenleyicisi penceresinin altında XML düğmesini tıklatın.
  12. Bir SQL Server nesnesi üzerinde artık dayalı BIR şema var. Önce oluşturmak ve yazılı bir DataSet doldurmak için şemaya eşleyen sınıfı oluşturmalıdır. Tasarım görünümü sağ tıklatın ve sonra Generate DataSet seçeneğinin seçili olduğundan emin olun. Seçili değilse, seçin. Şema kaydedip sınıfı oluşturmak için CTRL + S tuşlarına basın.
  13. Yeni yazılan DataSet sınıfı görüntülemek için <a0></a0>, Tüm dosyaları göster Solution Explorer'da Ek Yardım düğmesini tıklatın.
  14. DsProducts.xsd yanındaki ağacını genişletin. Yeni şema sınıfı eşleştirmeye içeren bir dsProducts.vb dosyası görürsünüz. Ayrıca dosyaları değişiklikleri izlemek için kullanılan bir dsProducts.xsx dosya bakın.
  15. DataSet yazılı görüntülemek için kod yazmak için <a0></a0>, Web formu (değil, bir Web denetimi) üzerinde çift tıklatın. Web form codebehind görünür ve Page_Load olayı içinde ekleme noktasının bulunduğu.
  16. System.Data.SqlClient ad alanında bulunan sınıf eklemek için <a0></a0>, the codebehind üstünde kullanarak aşağıdaki ifadeyi ekleyin:
    using System.Data.SqlClient;
    					
    Not: Visual Studio. NET'te bir Web uygulaması oluşturduğunuzda, bu küçük bir Web uygulaması için sahip olduğunuz diğer namespaces projede otomatik olarak başvurulur.

  17. <a0>SqlConnection</a0> sınıfının varsayılan oluşturucu için bağlantı dizesi geçirerek, Page_Load olay yordamında bir Connection nesnesi oluşturun:
    SqlConnection cn = new SqlConnection("server=myserver;uid=myuid;pwd=mypassword;database=northwind");
    					
  18. Sonra SqlDataAdapter nesneye iletilen bir SqlCommand nesnesi oluşturun. Improvised bir SQL deyimi ve yeni bağlantı nesnesi için SqlCommand kurucu geçirir. Önceki yeni SqlCommand nesnesi CommandText özelliğini ayarlar. Ayrıca, bir saklı yordamın adını iletebilirsiniz.
    SqlCommand cmd = new SqlCommand("select * from [Alphabetical list of products]", cn);
    					
  19. Yeni SqlCommand nesnesi için kurucu geçirmeden SqlDataAdapter nesnesinin bir örneğini oluştur:
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    					
  20. Şimdi veritabanına bağlanmak ve verileri vermek için gereken bir nesne oluşturun. Aşağıda yazılı DataSet kodudur. DsProducts</a0> sınıfının bir örneği oluşturulur unutmayın: Schema dsProducts için eşleştirir ve DataSet sınıfından değil genel DataSet sınıfı kendisini devralan bir sınıf.
    dsProducts tds = new dsProducts();
    					
  21. Yazılı DataSet nesnesinde geçirmeden SqlDataAdapter, <a2>Dolgu</a2> yöntemini çağırın ve DataSet nesnesinin DataTable TableName özelliği yazılan:
    da.Fill(tds, tds.Tables[0].TableName);
    					
  22. Metnin metin özelliği DataTable yazılı DataSet nesnesinin türü kesin belirlenmiş sütunlarda kutusu denetimleri ayarlamak için <a0></a0>, aşağıdaki biçimi kullanın:
    dsProducts.DataTableName[RowIndex].ColumnName
    						
    Bu örnek için Rowındex 5 olarak kodlanmış uygulamasıdır:
    TextBox1.Text = tds.Alphabetical_list_of_products[5].ProductName;
    TextBox2.Text = tds.Alphabetical_list_of_products[5].CategoryName; 
    						
    metin kutusu denetimleri DataGrid altıncı satırda maddenin ürün ve kategori adlarını görüntülemek, Sayfa yüklendiğinde sıfır tabanlı, satır koleksiyonu olduğu unutmayın.
  23. Tüm sonuçları DataGrid denetiminde görüntülemek için <a0></a0>, DataSource özelliği DataGrid için yeni yazılan DataSet ayarlayın ve DataBind() arayın:
    DataGrid1.DataSource = tds;
    DataGrid1.DataBind();
    					

(WebForm1.aspx) liste kodu tamamlayın.

<%@ 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>
				

(WebForm1.aspx.cs) liste kodu tamamlayın.

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
  }
}

				

Doğrulama

Web uygulamasını çalıştırmak için F5 tuşuna basın. Tarayıcı "Uncle Bob'ın Organic Dried Armut" Ürün metin kutusu ve "Kategori metin kutusunda 1.000.000" görüntüler. Ürün bilgilerle doldurulan BIR DataGrid için metin kutularının altında görüntülenir.

SORUN GİDERME

  • Genel veri isteme Dolgu yöntemini çağırdığınızda bir TableName geçirin. TableName yerine dizinler olarak DataSet nesnesinin Tablo tahsilat erişimi olsa bile, DataSet, yazdığınız ancak bunu gerektirir. Yazılı DataSet nesnesinin TableName geçirilecek hatası "Yok hiçbir satır konumu 0" bir hata, çalışma zamanında atar. Bu da kendi TableName ancak yapılamıyor anlamına gelir, yukarıdaki kodu olarak erişilen yazılı DataSet sınıfı başvurulan bir geçmesi gereken yazılı DataSet gereksinim.
  • El ile Visual Studio. NET'in oluşturduğu şemayı yaptığınız değişiklikler, şema oluşturmak için başlangıçta kullanılan ve DataSet sınıfı yazdınız ve yeniden şema'nın Tasarım görünümüne sürükleyin, veritabanı nesnesini değiştirirseniz, üzerine yazılır. Bu, genellikle bir Microsoft SQL sunucu düzeyinde gereken değişiklikleri yapın ve sonuç şema değiştirmek daha yeni bir yazılı DataSet tercih edilir.

Referanslar

Bir DataSet yazılı ile çalışma hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitesine bakın:
http://msdn2.microsoft.com/en-us/library/esbykkzb(vs.71).aspx


Özellikler

Makale numarası: 320714 - Last Review: 17 Mayıs 2007 Perşembe - Gözden geçirme: 2.3
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft ADO.NET (included with the .NET Framework)
  • Microsoft ADO.NET 1.1
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
Anahtar Kelimeler: 
kbmt kbhowtomaster KB320714 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:320714

Geri Bildirim Ver

 

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