İzlenecek Yol: Belge Düzeyi Projede Karmaşık Veri Bağlama
Bu anlatımda bir belge düzeyi projesinde karmaşık veri bağlamanın temelleri gösterilir.Bir Microsoft Office Excel çalışma sayfasındaki birden çok hücreyi Northwind SQL Server veritabanındaki alanlara bağlayabilirsiniz.
Uygulama hedefi: Bu konudaki bilgiler, Excel 2013 ve Excel 2010 için belge düzeyi projelere yöneliktir. Daha fazla bilgi edinmek için, bkz. Office Uygulaması ve Proje Türüne Göre Kullanılabilir Özellikler.
Bu örneklerde aşağıdaki görevler gösterilir:
Çalışma kitabı projenize veri kaynağı ekleme.
Çalışma sayfasına veri ilişkili denetim ekleme.
Veri değişikliklerini veritabanında kaydetme.
[!NOT]
Bilgisayarınız, aşağıdaki yönergelerde yer alan Visual Studio kullanıcı arabirimi öğelerinden bazıları için farklı adlar veya konumlar gösterebilir. Sahip olduğunuz Visual Studio sürümü ve kullandığınız ayarlar bu öğeleri belirler. Daha fazla bilgi için, bkz. Visual Studio'da Geliştirme Ayarlarını özelleştirme.
Önkoşullar
Bu örneği tamamlamak için aşağıdaki bileşenler gerekmektedir:
Microsoft Office geliştirici araçlarını içeren bir Visual Studio 2013 sürümü. Daha fazla bilgi edinmek için, bkz. Office Çözümleri Geliştirmek İçin Bilgisayarı Yapılandırma.
Excel 2013 veya Excel 2010.
Northwind SQL Server örnek veritabanı olan bir sunucuya erişim.
SQL Server veritabanı üzerinde okuma ve yazma izinleri.
Yeni Bir Proje Oluşturma
İlk adım, bir Excel çalışma kitabı projesi oluşturamaktır.
Yeni bir proje oluşturmak için
Karmaşık Veri Bağlaması isimli bir Excel çalışma kitabı projesi oluşturun.Sihirbazda Create a new document'ı (Yeni belge oluştur) seçin.
Daha fazla bilgi için bkz. Nasıl Yapılır: Visual Studio'da Office Projeleri Oluşturma.
Visual Studio tasarımcıda yeni Excel çalışma kitabını açar ve karmaşık veri bağlaması projeye ekler Çözüm Gezgini.
Veri Kaynağı Oluşturma
Projenize yazılmış veri kümesi eklemek için Veri Kaynağı penceresini kullanın.
Veri kaynağı oluşturmak için
Veri kaynakları penceresi görünmüyorsa, menü çubuğu, seçme, onu görüntülemek Görünüm, Diğer Pencereler, Veri kaynakları.
Seçim Yeni veri kaynağı Ekle başlatmak için Veri kaynağı Yapılandırma Sihirbazı'nı.
Veritabanı'nı seçin ve sonra İleri'yi tıklatın.
Northwind örnek SQL Server veritabanına bir veri bağlantısı seçin veya New Connection düğmesini kullanarak yeni bir bağlantı ekleyin.
Bağlantı seçildikten veya oluşturulduktan sonra İleri'yi tıklatın.
Bağlantıyı kaydetme seçeneği işaretliyse temizleyin ve İleri'yi tıklatın.
Veritabanı nesneleri penceresindeki Tablolar düğümünü genişletin.
Employees tablosunun yanındaki onay kutusunu seçin.
Son düğmesini tıklatın.
Sihirbaz Employees tablosunu Veri Kaynakları penceresine ekler.Ayrıca, Çözüm Gezgini'nde görünür olan türü belirtilmiş bir veri kümesini de ekler.
Çalışma Sayfasına Denetim Ekleme
Çalışma kitabı açıldığında bir çalışma sayfası Employees tablosunu görüntüleyecektir.Kullanıcılar veriler üzerinde değişiklik yapabilecek ve bu değişiklikleri veritabanına bir düğmeyi tıklatarak geri kaydedebilecektir.
Çalışma sayfasını tabloya otomatik olarak bağlamak için çalışma sayfasına Veri Kaynakları penceresinden bir ListObject denetimi ekleyebilirsiniz.Kullanıcıya değişiklikleri kaydetme seçeneği vermek için Araç Kutusu'ndan bir Button denetimi ekleyin.
Bir liste nesnesi eklemek için
Doğrulayın My karmaşık veri Binding.xlsx Visual Studio tasarımcısında açık çalışma kitabı ile Sheet1 görüntülenir.
Veri Kaynakları penceresini açın ve Employees düğümünü seçin.
Beliren açılır oku tıklatın.
Açılır listedeki ListObject(Liste Nesnesi)'i seçin.
Employees tablosunu A6 hücresine sürükleyin.
A6 hücresinde EmployeesListObject adında bir ListObject denetimi oluşturulur.Aynı anda, BindingSource isimli bir EmployeesBindingSource, bir tablo bağdaştırıcısı ve bir DataSet olgusu projeye eklenir.Denetim, karşılığında DataSet olgusuna bağlanan BindingSource'a bağlanır.
Bir düğme eklemek için
- Araç Kutusu'nun Ortak Denetimler sekmesinden, çalışma sayfasının A4 hücresine bir Button denetimi ekleyin.
Sonraki adım çalışma sayfası açıldığında düğmeye metin eklemektir.
Denetimi Başlatma
Startup olay işleyicisinde düğmeye metin ekleyin.
Denetimi başlatmak için
Çözüm Gezgini'nde Sheet1.vb ya da Sheet1.csi sağ tıklatın ve ardından kısayaol menüsünden Kodu Göster'i tıklatın.
Button öğesinin metnini ayarlamak için aşağıdaki kodu Sheet1_Startup yöntemine ekleyin.
Me.Button1.Text = "Save"
this.button1.Text = "Save";
Sadece C#'ta, Click olayı için Sheet1_Startup yöntemine bir olay işleyicisi eklemelisiniz.
this.button1.Click += new EventHandler(button1_Click);
Şimdi düğmenin Click olayını işlemek için kod ekleyin.
Değişiklikleri Veritabanına Kaydetme
Verilere yapılan değişiklikler, açıkça veritabanına geri kaydedilmedikçe, sadece yerel veri kümesinde vardır.
Değişiklikleri veritabanına kaydetmek için
Button öğesinin Click olayı için bir olay işleyicisi ekleyin ve veri kümesinde yapılan bütün değişiklikleri veritabanına geri uygulamak için aşağıdaki kodu ekleyin.
Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button1.Click Try Me.EmployeesTableAdapter.Update(Me.NorthwindDataSet.Employees) Catch ex As System.Data.DataException MessageBox.Show(ex.Message) End Try End Sub
private void button1_Click(object sender, EventArgs e) { try { this.employeesTableAdapter.Update(this.northwindDataSet.Employees); } catch (System.Data.DataException ex) { MessageBox.Show(ex.Message); } }
Uygulamayı Test Etme
Artık, verilerin beklendiği gibi göründüğünü ve liste nesnesinde verileri değiştirebildiğinizi onaylamak için çalışma kitabınızı sınayabilirsiniz.
Veri bağlamayı sınamak için
F5'e basın.
Çalışma kitabı açıldığı zaman liste nesnesinin Employees tablosundan gelen verilerle doldurulduğunu doğrulayın.
Verileri değiştirmek için
Davolio adını içermesi gereken B7 hücresine tıklayın.
Yılmaz adını yazın ve ENTER tuşuna basın.
Sütun üstbilgisini değiştirmek için
LastName sütun üstbilgisini içeren hücreyi tıklatın.
Soyadı yazın ve ENTER tuşuna basın.
Verileri saklamak için
Çalışma sayfasında Kaydet'i tıklatın.
Excel'den çıkın.Değişiklikleri kaydetmek isteyip istemediğiniz sorulduğunda Hayır'ı tıklatın.
F5 tuşuna basarak projeyi tekrar çalıştırın.
Liste nesnesi Employees tablosundan gelen verilerle doldurulur.
Dikkat edin hücre adı B7 yapılan ve veritabanına kaydedilen veri değişikliği olan Yılmaz, yine de'dür.Sütun üstbilgisi asıl hâli olan LastName'e geri döner; çünkü, sütun üstbilgisi veritabanına bağımlı değildir ve yaptığınız değişiklikleri çalışma sayfasına kaydetmemiştiniz.
Yeni satır eklemek için
Liste nesnesinin içinde bir hücre seçin.
Listenin altında ilk hücresinde bir yıldız işareti (*) olan yeni bir satır belirir.
Boş satıra aşağıdaki bilgileri ekleyin.
EmployeeID
LastName
FirstName
Başlık
10
Ito
Shu
Satış Yöneticisi
Satırları silmek için
- Çalışma sayfasının epeyce solundaki Numara 16 (16. satır)'ya sağ tıklatın ve ardından Sil'i tıklatın.
Listedeki satırları sıralamak için
Listenin içinde bir hücre seçin.
Her sütun üstbilgisinde ok düğmeleri görünür.
Last Name sütun üstbilgisindeki ok düğmesini tıklatın.
Artan Sıralama'yı tıklatın.
Satırlar soyadlarına göre alfabetik olarak sıralanır.
Bilgi süzmek için
Listenin içinde bir hücre seçin.
Title sütun üstbilgisindeki ok düğmesini tıklatın.
Satış Temsilcisi'ni tıklatın.
Liste sadece Title sütununda Satış Temsilcisi olan satırları gösterir.
Title sütun üstbilgisindeki ok düğmesini tekrar tıklatın.
(All) (Tümü)'u tıklatın.
Süzme kaldırılır tüm satırlar görünür.
Sonraki Adımlar
Bu anlatımda veritabanındaki bir tabloyu bir liste nesnesine bağlamanın temelleri gösterilir.Sonradan gelebilecek bazı görevler:
Verileri çevrimdışı kullanılabilmesi için önbelleğe alma.Daha fazla bilgi için bkz. Nasıl Yapılır: Çevrimdışı veya Sunucuda Kullanmak Üzere Verileri Önbelleğe Alma.
Çözümleri dağıtma.Daha fazla bilgi için bkz. Office Çözümünü Dağıtma.
Bir alan ve tablo arasında master/detail (ana/ayrıntı) ilişkisi oluşturma.Daha fazla bilgi için bkz. İzlenecek Yol: Önbellekteki Veri Kümesini Kullanarak Ana Öğe/Ayrıntı İlişkisi Oluşturma.
Ayrıca bkz.
Görevler
İzlenecek Yol: Belge Düzeyi Projede Basit Veri Bağlama