Uygulandığı Öğe
Excel

Bu makale, aşağıdaki Microsoft .NET Framework Sınıf Kitaplığı ad alanlarını ifade eder:

  • System.Data.SqlClient

  • System.ıo

  • System.Text

BU GÖREVDE

Özet

Bu adım adım makalede, veritabanından dinamik olarak sekmeyle ayrılmış metin dosyasının nasıl derlendiği açıklanır. Ardından dosyayı Microsoft Excel'de açabilirsiniz. Bu makaledeki örnek kod bir Microsoft SQL Server veritabanına bağlanmayı, Pubs veritabanından bir veri kümesi döndürmeyi ve ardından verilerle sekmeyle sınırlandırılmış bir metin dosyası oluşturmayı gösterir.

Örnek Kodu Oluşturma

Bu örnek, ExcelCS.aspx adlı bir örnek ASP.NET Visual C# .NET sayfası oluşturur. Bu sayfa SQL Server Pubs veritabanına bağlanır ve bilgileri sekmeyle sınırlandırılmış bir metin dosyasına döndürmek için FileStream nesnesini kullanır. ASP.NET sayfası daha sonra kodun çıkışını göstermek için oluşturduğunuz .xls dosyasının bağlantısını görüntüler.

  1. Microsoft Visual Studio .NET'i başlatın.

  2. Dosya menüsünde Yeni'nin üzerine gelin ve Proje'ye tıklayın.

  3. Yeni Proje iletişim kutusundaki Proje Türleri'nin altında Visual C# Projeleri'ne tıklayın. Şablonlar'ın altında Web Uygulaması ASP.NET'e tıklayın.

  4. Konum kutusuna sunucu adını ve proje adını aşağıdaki biçimde yazın:

    http:// SunucuAdı/Proje Adı Bu örnekte, projeyiExcelCSTest olarak adlandırın. Yerel sunucuyu kullanıyorsanız, sunucu adını http://localhost olarakbırakabilirsiniz.

  5. Bir HyperLink denetimini araç kutusundan WebForm1.aspx dosyasına sürükleyin.

  6. WebForm1.aspx sağ tıklayın ve ardından Arka planda kod sayfası kaynağını görüntülemek için Kodu Görüntüle'ye tıklayın.

  7. Aşağıdaki deyimleri arka planda kod sayfasının en üstüne ekleyin:

    using System.Data.SqlClient;using System.IO;using System.Text;
  8. WebForm1.aspx arka planda kod sayfasında, Page_Load olayına aşağıdaki kodu ekleyin:

    //You use these variables throughout the application.string fileExcel, filePath, fileName, strLine, sql;FileStream objFileStream;StreamWriter objStreamWriter;Random nRandom = new Random(DateTime.Now.Millisecond);SqlConnection cnn = new SqlConnection("server=(local);database=pubs;Integrated Security=SSPI"); //Create a random file name.fileExcel = "t" + nRandom.Next().ToString() + ".xls";//Set a virtual folder to save the file.//Make sure to change the application name to match your folder.filePath = Server.MapPath("\\ExcelCSTest");fileName = filePath + "\\" + fileExcel;//Use FileSystem objects to create the .xls file.objFileStream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write);          objStreamWriter = new StreamWriter(objFileStream); //Use a DataReader object to connect to the Pubs database.cnn.Open();sql = "select au_id,au_lName,au_fname,phone,address,city,state,zip,contract from authors"; SqlCommand cmd = new SqlCommand(sql, cnn); SqlDataReader dr; dr = cmd.ExecuteReader();//Initialize the string that is used to build the file.strLine = "";//Enumerate the field names and the records that are used to build //the file.for (int i = 0; i <= dr.FieldCount-1; i++)    {      strLine = strLine + dr.GetName(i).ToString() + Convert.ToChar(9);   }//Write the field name information to the file.objStreamWriter.WriteLine(strLine);//Reinitialize the string for data.strLine = "";//Enumerate the database that is used to populate the file.while (dr.Read())    {      for (int i = 0; i <= dr.FieldCount-1; i++)          {         strLine = strLine + dr.GetValue(i).ToString() + Convert.ToChar(9);      }                          objStreamWriter.WriteLine(strLine);      strLine="";   }//Clean up.dr.Close();cnn.Close();objStreamWriter.Close();objFileStream.Close();//Include a link to the Excel file.HyperLink1.Text="Open Excel";HyperLink1.NavigateUrl=fileExcel;
  9. ortamınız için gereken bağlantı dizesi (SqlConnection) değiştirin.

  10. Proje dosyalarını kaydetmek için Dosya menüsünde Tümünü Kaydet'e tıklayın.

  11. Visual Studio .NET Tümleşik Geliştirme Ortamı'ndaki (IDE) Derleme menüsünde, projeyi derlemek için Çözüm Oluştur'a tıklayın.

  12. Visual Studio .NET Tümleşik Geliştirme Ortamı Çözüm Gezgini, WebForm1.aspx sağ tıklayın ve kodu çalıştırmak için Tarayıcıda Görüntüle'ye tıklayın.

Sorun giderme

  • Kod örneğindeki bağlantı dizesi ortamınızla eşleşecek şekilde değiştirmeniz gerekir.

  • Dosyanın yazılması için aspnet_wp işlemi (Microsoft Windows 2000 ve Microsoft Windows XP'de) veya w3wp işlemi (Microsoft Windows Server 2003'te) için izinleri artırmanız gerekebilir. Daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:

    317012 BİlGİ: ASP.NET'da İşlem ve İstek Kimliği

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.