ready to rock
TRANSCRIPT
![Page 1: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/1.jpg)
.Net 2.0 ile Gelen .Net 2.0 ile Gelen Yenilikler Yenilikler .Net 2.0 ile Gelen .Net 2.0 ile Gelen Yenilikler Yenilikler Burak Selim ŞenyurtBurak Selim ŞenyurtMVP (Visual Developer – Visual C#)MVP (Visual Developer – Visual C#)
![Page 2: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/2.jpg)
Ajanda – Visual Studio Ajanda – Visual Studio 20052005 ClickOnce TekniğiClickOnce Tekniği
RefactoringRefactoring
Class DesignerClass Designer
Debugger VisualizerDebugger Visualizer
![Page 3: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/3.jpg)
Ajanda – C# 2.0Ajanda – C# 2.0 GenericsGenerics
Kısmi Tipler (Partial Types)Kısmi Tipler (Partial Types)
Yeni İterasyon Tekniği (Yield Kullanımı)Yeni İterasyon Tekniği (Yield Kullanımı)
İsimsiz Metodlar (Anonymous Methods)İsimsiz Metodlar (Anonymous Methods)
Kısmi Tipler (Partial Types)Kısmi Tipler (Partial Types)
Static SınıflarStatic Sınıflar
Nullable Değer TürleriNullable Değer Türleri
![Page 4: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/4.jpg)
Ajanda – Ado.Net 2.0Ajanda – Ado.Net 2.0 ConnectionStrings Kavramı ve StringBuildersConnectionStrings Kavramı ve StringBuilders Veri Sağlayıcıdan Bağımsız Mimari (Data Provider Veri Sağlayıcıdan Bağımsız Mimari (Data Provider
Independent Architect)Independent Architect) MARS Çoklu Aktif Sonuç Kümeleri (Multiple Active MARS Çoklu Aktif Sonuç Kümeleri (Multiple Active
Result Sets)Result Sets) Toplu Güncelleştirme (Batch Update)Toplu Güncelleştirme (Batch Update) Asenkron Komut Yürütmek (Asynchronous Asenkron Komut Yürütmek (Asynchronous
Command Executing)Command Executing) Bulk Data Kopyalama MekanizmasıBulk Data Kopyalama Mekanizması Yeni Transaction MimarisiYeni Transaction Mimarisi Binary SerileştirmeBinary Serileştirme
![Page 5: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/5.jpg)
Ajanda – Asp.Net 2.0Ajanda – Asp.Net 2.0
On-Demand Compiling Çalışma ModeliOn-Demand Compiling Çalışma Modeli Cross Page PostingCross Page Posting Master Pages Master Pages Veri Kaynağı Kontrolleri (Data Source Controls)Veri Kaynağı Kontrolleri (Data Source Controls) Temalar (Themes)Temalar (Themes) Site Navigasyonu (Site Navigation)Site Navigasyonu (Site Navigation) Profil Yönetimi (Profile Management)Profil Yönetimi (Profile Management) Konfigurasyon Yönetimi (Configuration Konfigurasyon Yönetimi (Configuration
Management)Management) Üyelik Yönetimi (Membership Management)Üyelik Yönetimi (Membership Management)
![Page 6: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/6.jpg)
Visual Studio 2005 ile Visual Studio 2005 ile Gelen Yenilikler Gelen Yenilikler
Visual Studio 2005 ile Visual Studio 2005 ile Gelen Yenilikler Gelen Yenilikler
![Page 7: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/7.jpg)
Visual Studio 2005 - ClickOnceVisual Studio 2005 - ClickOnce
Web uygulamalarının sağladığı Web uygulamalarının sağladığı dağıtım dağıtım (deployment) kolaylığının(deployment) kolaylığının, windows , windows tabanlı uygulamalar içinde tabanlı uygulamalar içinde sağlanabilmesini amaçlar.sağlanabilmesini amaçlar.
![Page 8: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/8.jpg)
Visual Studio 2005 - RefactoringVisual Studio 2005 - Refactoring
Kodların yeniden gözden geçirilmesi Kodların yeniden gözden geçirilmesi dahada dahada kolaylaştırılmıştırkolaylaştırılmıştır.. Yeniden isimlendirme (Rename)Yeniden isimlendirme (Rename) Alanlardan (Field) özelliklere (Property) hızlı Alanlardan (Field) özelliklere (Property) hızlı
geçişgeçiş Metodlaştırma (Extract Method)Metodlaştırma (Extract Method) Arayüz (Interface) çıkartmaArayüz (Interface) çıkartma Parametre sıralarını değiştirmeParametre sıralarını değiştirme
![Page 9: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/9.jpg)
Visual Studio 2005 – Class DesignerVisual Studio 2005 – Class Designer
Uygulamaların yazılımcı dostu UML Uygulamaların yazılımcı dostu UML diagramları ile diagramları ile tam entegrasyonunutam entegrasyonunu sağlar.sağlar.
Sınıf diagramlarında Sınıf diagramlarında yapılan yapılan değişikliklerin, uygulamalaradeğişikliklerin, uygulamalara, , uygulamalarda yapılan değişikliklerin uygulamalarda yapılan değişikliklerin şemalaraşemalara yansıtılmasını sağlar. yansıtılmasını sağlar.
![Page 10: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/10.jpg)
Visual Studio 2005 – Debugger Visual Studio 2005 – Debugger VisualizerVisualizer
Çalışma zamanındaÇalışma zamanında tabular veya xml tabular veya xml bazlı nesnelerin içeriğinin bazlı nesnelerin içeriğinin
Xml, Xml, Html, Html, Text ve Table Text ve Table
formatında izlenebilmesini sağlar.formatında izlenebilmesini sağlar.
![Page 11: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/11.jpg)
Class DesignerClass DesignerClickOnceClickOnce
RefactoringRefactoringDebugger VisualizerDebugger Visualizer
![Page 12: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/12.jpg)
C# 2.0 ile Gelen C# 2.0 ile Gelen Yenilikler Yenilikler C# 2.0 ile Gelen C# 2.0 ile Gelen Yenilikler Yenilikler
![Page 13: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/13.jpg)
C# 2.0 - GenericsC# 2.0 - Generics
Türden bağımsızTürden bağımsız olarak algoritma geliştirmek olarak algoritma geliştirmek için kullanılan dilin güçlü bir yapısıdır. için kullanılan dilin güçlü bir yapısıdır.
Değişik türler ile çalışacak Değişik türler ile çalışacak birden fazla tip birden fazla tip yazmak yerine tek bir tipyazmak yerine tek bir tip kullanılabilmesini kullanılabilmesini sağlar.sağlar.
Gereksiz boxing ve unboxing süreçlerini Gereksiz boxing ve unboxing süreçlerini ortadan ortadan kaldırırkaldırır..
![Page 14: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/14.jpg)
C# 2.0 - GenericsC# 2.0 - Generics Uygulama AlanlarıUygulama Alanları
Koleksiyonlar(Collections)Koleksiyonlar(Collections)
Sınıflar(Classes)
Yapılar(Structs)
Arayüzler(Interfaces)
Metodlar(Methods)
Temsilciler(Delegates)
![Page 15: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/15.jpg)
GenericsGenerics Koleksyion SınıflarıKoleksyion Sınıfları
KoleksiyonKoleksiyon ArayüzleriArayüzleri
Koleksiyon Temel SınıflarıKoleksiyon Temel Sınıfları
YararlıYararlı SınıflarSınıflar
List<T>List<T>Dictionary<K,V>Dictionary<K,V>SortedDictionary<SortedDictionary<K,V>K,V>Stack<T>Stack<T>Queue<T>Queue<T>
IList<T>IDictionary<K,V>ICollection<T>IEnumerable<T>IEnumerator<T>IComparable<T>IComparer<T>
Collection<T>KeyedCollection<T>ReadOnlyCollection<T>
Nullable<T>EventHandler<T>Comparer<T>
![Page 16: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/16.jpg)
GenericsGenerics
![Page 17: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/17.jpg)
GenericsGenerics Mimaride Mimaride KısıtlamalarKısıtlamalar Generic tipler için çeşitli Generic tipler için çeşitli zorunluluklar (Constraints)zorunluluklar (Constraints)
tanımlayabiliriz.tanımlayabiliriz.
Koşul Syntax
Değer tipi olma zorunluluğu where Tip : structwhere Tip : struct
Referans tipi olma zorunluluğu where Tip : classwhere Tip : class
Constructor zorunluluğu where Tip : new()where Tip : new()
Türeme zorunluluğu where Tip : <Temel where Tip : <Temel Sınıf>Sınıf>
Interface zorunluluğu where Tip : where Tip : <Interface><Interface>
![Page 18: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/18.jpg)
Generic Koleksiyonlar (Collections)Generic Koleksiyonlar (Collections)Generic Struct (Yapı)Generic Struct (Yapı)
Generic Performance TestGeneric Performance Test
![Page 19: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/19.jpg)
Kullanıcı tanımlı tiplere ait nesne dizileri Kullanıcı tanımlı tiplere ait nesne dizileri üzerinde üzerinde foreachforeach iterasyonunun iterasyonunun tip güvenlitip güvenli ve ve daha kolaydaha kolay uygulanabilmesini amaçlar. uygulanabilmesini amaçlar.
C# 2.0 – Yeni İterasyon Tekniği C# 2.0 – Yeni İterasyon Tekniği (Yield Kullanımı)(Yield Kullanımı)
![Page 20: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/20.jpg)
C# 2.0 – Yeni İterasyon Tekniği C# 2.0 – Yeni İterasyon Tekniği (Yield Kullanımı)(Yield Kullanımı)
C# 1.0/1.1 için Iteratif Uygulama Deseni
![Page 21: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/21.jpg)
Yeni İterasyon TekniğiYeni İterasyon Tekniği(Yield Kullanımı)(Yield Kullanımı)
![Page 22: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/22.jpg)
Temsilcileri(delegates) işaret edecekleri Temsilcileri(delegates) işaret edecekleri metodların metodların sahip oldukları kod blokları ile sahip oldukları kod blokları ile bir seferde tanımlayabilmeyibir seferde tanımlayabilmeyi amaçlar. amaçlar.
Metod blokları, Metod blokları, çalışma zamanındaçalışma zamanında kendisini çağıracak olan temsilci nesnesine kendisini çağıracak olan temsilci nesnesine eklenir. eklenir.
Dışarıdan Dışarıdan parametreparametre alabilirler ve alabilirler ve geriye geriye değerdeğer döndürebilirler. döndürebilirler.
Metod ile birlikte Metod ile birlikte kullanılan temsilcinin kullanılan temsilcinin bilinmesine gerek yokturbilinmesine gerek yoktur. . delegatedelegate anahtar anahtar sözcüğü bu işi üstlenir. sözcüğü bu işi üstlenir.
C# 2.0 – İsimsiz Metodlar C# 2.0 – İsimsiz Metodlar (Anonymous Methods)(Anonymous Methods)
![Page 23: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/23.jpg)
KlasikKlasik temsilci (delegate) temsilci (delegate) yaklaşımı.yaklaşımı.
C# 2.0 – İsimsiz Metodlar C# 2.0 – İsimsiz Metodlar (Anonymous Methods)(Anonymous Methods)
public delegate double dlgCircle(double a, double b);
static double TestMethod(double pi, double r){
return pi * r * r;}
dlgCircle tOld = new dlgCircle(TestMethod);double result=tOld(1, 4);
![Page 24: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/24.jpg)
YeniYeni temsilci (delegate) temsilci (delegate) yaklaşımı.yaklaşımı.
C# 2.0 – İsimsiz Metodlar C# 2.0 – İsimsiz Metodlar (Anonymous Methods)(Anonymous Methods)
dlgCircle tNew = delegate(double pi, double r){
return pi * r * r;};
double alan = tNew(3.14, 10);
![Page 25: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/25.jpg)
C# 2.0 – İsimsiz Metodlar C# 2.0 – İsimsiz Metodlar (Anonymous Methods)(Anonymous Methods)
static void UpCounter(){
for (int i = 0; i < 100; i++){
Console.Write("+");Thread.Sleep(100);
}}
Thread t1 = new Thread(new ThreadStart(UpCounter));t1.Start();
Çok kanallı programlama (Multi Threading)Çok kanallı programlama (Multi Threading) için için klasik yaklaşım.klasik yaklaşım.
![Page 26: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/26.jpg)
Çok kanallı programlama (Multi Threading) Çok kanallı programlama (Multi Threading) için için yeni yaklaşım.yeni yaklaşım.
C# 2.0 – İsimsiz Metodlar C# 2.0 – İsimsiz Metodlar (Anonymous Methods)(Anonymous Methods)
static void UpCounter(){for (int i = 0; i < 100; i++){
Console.Write("+");Thread.Sleep(100);
}}Thread trdUpCounter = new Thread(delegate(){ UpCounter(); });
Thread trdDownCounter = new Thread(delegate(){
for (int i = 1; i <100; i++){Console.Write("-");Thread.Sleep(150);
}});
trdUpCounter.Start();trdUpCounter.Start();trdDownCounter.StartrdDownCounter.Start();t();
![Page 27: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/27.jpg)
C# 2.0 – İsimsiz Metodlar C# 2.0 – İsimsiz Metodlar (Anonymous Methods)(Anonymous Methods)
this.btnAnonymous.Click += new System.EventHandler(this.btnAnonymous_Click);
private void btnAnonymous_Click(object sender, EventArgs e){}
Event – Driven (Olay güdümlü) programlama Event – Driven (Olay güdümlü) programlama için için klasik yaklaşım.klasik yaklaşım.
![Page 28: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/28.jpg)
C# 2.0 – İsimsiz Metodlar C# 2.0 – İsimsiz Metodlar (Anonymous Methods)(Anonymous Methods)
this.btnAnonymous.Click += delegate(object sender, System.EventArgs arg){
MessageBox.Show("Onay 1")};
Event – Driven (Olay güdümlü) programlamaEvent – Driven (Olay güdümlü) programlama için için yeni yaklaşım.yeni yaklaşım.
![Page 29: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/29.jpg)
Kısmi tipler, bir tipin bütününü oluşturan Kısmi tipler, bir tipin bütününü oluşturan soyutsal parçalardırsoyutsal parçalardır. .
SınıflarSınıflar (Class), (Class), ArayüzlerArayüzler (Interface), (Interface), YapılarYapılar (Struct) kısmi olarak tanımlanıp (Struct) kısmi olarak tanımlanıp kullanılabilir.kullanılabilir.
Çoğunlukla görsel taraf ile kod tarafının Çoğunlukla görsel taraf ile kod tarafının ayrıştırılmasında kullanılır.ayrıştırılmasında kullanılır.
C# 2.0 – Kısmi Tipler (Partial C# 2.0 – Kısmi Tipler (Partial Types)Types)
![Page 30: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/30.jpg)
C# 2.0 – Kısmi Tipler (Partial C# 2.0 – Kısmi Tipler (Partial Types)Types)
![Page 31: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/31.jpg)
C# 2.0 – Kısmi Tipler (Partial C# 2.0 – Kısmi Tipler (Partial Types)Types) partial class DbManager{partial class DbManager{
public DbManager(string conStr){}public DbManager(string conStr){} public void SetCommand(string public void SetCommand(string qryStr){}qryStr){} public void Metod() { }public void Metod() { }}}
partial class DbManager{partial class DbManager{private SqlConnection private SqlConnection
con;con;private SqlCommand private SqlCommand
cmd;cmd;public SqlConnection public SqlConnection
ConnConn{{
get { return get { return con; }con; }
set { con = set { con = value; }value; }
}}public SqlCommand public SqlCommand
CmndCmnd{{
get { return cmd; get { return cmd; }}
set { cmd = set { cmd = value; }value; }
}}}}
![Page 32: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/32.jpg)
C# 2.0 – Static SınıflarC# 2.0 – Static Sınıflar SSadece adece static üyelerstatic üyeler içeren,içeren,
örneklendirilemörneklendirilemeeyenyen ve ve kalıtımkalıtım için için kullanılamayankullanılamayan sınıflardır. sınıflardır.public static class CommonMath
{public static double Total(double
valueA, double valueB){}public static double pi = 3.14;public static double PI{
get{return pi;}set{pi = value;}
}...
![Page 33: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/33.jpg)
Static sınıflara ait Static sınıflara ait nesne örneklerinesne örnekleri üretilemez.üretilemez.
Static sınıflara ait Static sınıflara ait nesne tanımlamalarınesne tanımlamaları yapılamaz.yapılamaz.
Yapıcı metodlar (Yapıcı metodlar (constructorsconstructors) içermez.) içermez. Sadece static üyelerSadece static üyeler den oluşur. den oluşur. Türetme (Inheritance) için kullanılamaz.Türetme (Inheritance) için kullanılamaz.
C# 2.0 – Static SınıflarC# 2.0 – Static Sınıflar
![Page 34: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/34.jpg)
C# 2.0 - C# 2.0 - Nullable TypesNullable Types
Değer türlerinin (Value Types), referans Değer türlerinin (Value Types), referans türleri (reference types) gibi türleri (reference types) gibi nullnull değer değer taşıyabilmesitaşıyabilmesi özelliği. özelliği.
int? degerTipi;degerTipi = null;
Veritabanı uygulamalarıVeritabanı uygulamaları için yararlı bir için yararlı bir özelliktir.özelliktir.
System.Nullable<T>System.Nullable<T> sınıfı yardımıyla kendi sınıfı yardımıyla kendi değer türlerimizi nullable olarak değer türlerimizi nullable olarak kullanabiliriz.kullanabiliriz.
![Page 35: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/35.jpg)
Ado.Net 2.0 ile Gelen Ado.Net 2.0 ile Gelen Yenilikler Yenilikler
Ado.Net 2.0 ile Gelen Ado.Net 2.0 ile Gelen Yenilikler Yenilikler
![Page 36: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/36.jpg)
Bağlantı bilgisinin herhangibir .Net Bağlantı bilgisinin herhangibir .Net uygulamasında uygulamasında aynı şekilde saklanmasınıaynı şekilde saklanmasını sağlar.sağlar.
Yeni Yeni Configuration APIConfiguration API sayesinde kod sayesinde kod tarafından tarafından kolayca yönetilebilirkolayca yönetilebilir..
Ado.Net 2.0 – ConnectionStrings Ado.Net 2.0 – ConnectionStrings KullanımıKullanımı
<configuration> <connectionStrings> <add name="AdvConStr" connectionString="data source=Manchester;database=AdventureWorks;integrated Security=true" providerName="System.Data.SqlClient"/> </connectionStrings></configuration>
ConfigurationManager.ConnectionStrings["AdvConStr"].ConnectionString;
Web (Web.config)Web (Web.config) Desktop (App.config)Desktop (App.config)
![Page 37: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/37.jpg)
Data Provider (Veri Sağlayıcı) seçimine göre Data Provider (Veri Sağlayıcı) seçimine göre daha daha kolay ConnectionStringkolay ConnectionString oluşturulmasını sağlayan yeni oluşturulmasını sağlayan yeni tipler.tipler.
Ado.Net 2.0 – ConnectionStringBuilder Ado.Net 2.0 – ConnectionStringBuilder NesneleriNesneleri
SqlConnectionStringBuilder sqlConStrBdr = new SqlConnectionStringBuilder();sqlConStrBdr.DataSource = "Manchester";sqlConStrBdr.InitialCatalog = "AdventureWorks";sqlConStrBdr.IntegratedSecurity = true;sqlConStrBdr.AsynchronousProcessing = true;sqlConStrBdr.MultipleActiveResultSets=true;Console.WriteLine(sqlConStrBdr.ConnectionString);
SqlConnectionStringBuilderSqlConnectionStringBuilder
OleDbConnectionStringBuilderOleDbConnectionStringBuilder
OracleConnectionStringBuilderOracleConnectionStringBuilder
OdbcConnectionStringBuilderOdbcConnectionStringBuilder
DbConnectionStringBuilderDbConnectionStringBuilder
![Page 38: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/38.jpg)
Tüm veri sağlayıcı bağımlı nesneleri Tüm veri sağlayıcı bağımlı nesneleri tek bir tek bir çatıçatı altında toplar. altında toplar.
Çok biçimliliği kullanarak çalışma Çok biçimliliği kullanarak çalışma zamanında zamanında veri sağlayıcılar arasındaki veri sağlayıcılar arasındaki geçişigeçişi kolaylaştırır. kolaylaştırır.
Tüm istekler Tüm istekler managed (yönetimli) nesneler managed (yönetimli) nesneler vasıtasıylavasıtasıyla kolayca gerçekleştirilir. kolayca gerçekleştirilir.
Gerçek bir kullanım alan Enterprise Library Gerçek bir kullanım alan Enterprise Library içerisindeki içerisindeki Data Access Application BlockData Access Application Block’ ’ tur.tur.
Ado.Net 2.0 – Veri Sağlayıcı Bağımsız Ado.Net 2.0 – Veri Sağlayıcı Bağımsız Mimari (Data Provider Independent Mimari (Data Provider Independent Architect)Architect)
![Page 39: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/39.jpg)
Ado.Net 2.0 – Veri Sağlayıcı Bağımsız Ado.Net 2.0 – Veri Sağlayıcı Bağımsız Mimari (Data Provider Independent Mimari (Data Provider Independent Architect)Architect)
•Provider ToplayıcıProvider Toplayıcı•Factory ÜreticiFactory Üretici
•Gerekli Ürün Gerekli Ürün ÜreticiÜretici
![Page 40: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/40.jpg)
Ado.Net 2.0 – Veri Sağlayıcı Bağımsız Ado.Net 2.0 – Veri Sağlayıcı Bağımsız Mimari (Data Provider Independent Mimari (Data Provider Independent Architect)Architect)
Sistemde yüklü olan tüm Sistemde yüklü olan tüm veri veri sağlayıcılarının elde edilmesinisağlayıcılarının elde edilmesini sağlar. sağlar.
Seçilen veri sağlayıcıyı kullanarak uygun Seçilen veri sağlayıcıyı kullanarak uygun Connection, Command, DataAdapter, Connection, Command, DataAdapter, Parameter, DataReader, CommandBuilder Parameter, DataReader, CommandBuilder vb. nesnelerinin vb. nesnelerinin üretilmesindenüretilmesinden sorumludur. sorumludur.
DbProviderFactories
DbProviderFactoryDbProviderFactory
![Page 41: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/41.jpg)
Veri Sağlayıcı Bağımsız MimariVeri Sağlayıcı Bağımsız Mimari(Data Provider Independent (Data Provider Independent
Architecture)Architecture)
![Page 42: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/42.jpg)
Ado.Net 2.0 – MARSAdo.Net 2.0 – MARS
![Page 43: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/43.jpg)
Ado.Net 2.0 – MARS Çoklu Aktif Ado.Net 2.0 – MARS Çoklu Aktif Sonuç Kümeleri (Multiple Active Sonuç Kümeleri (Multiple Active Result Sets)Result Sets) AAynı açık bağlantı üzerinden birden fazla ynı açık bağlantı üzerinden birden fazla
sonuçsonuç kümesini elde edebileceğimiz sql kümesini elde edebileceğimiz sql sorgularınınsorgularının tek bir bağlantı üzerindentek bir bağlantı üzerinden çalıştırılçalıştırılabilmesi.abilmesi.
Çalışma Şartları;Çalışma Şartları;
Veri tabanı sunucusunun Veri tabanı sunucusunun MARS desteğininMARS desteğinin olması gerekir.olması gerekir.
Bağlantı katarı bilgisinde varsayılan değeri Bağlantı katarı bilgisinde varsayılan değeri false olan false olan MultipleActiveResultSetsMultipleActiveResultSets özelliği özelliği truetrue olmalıdır. olmalıdır.
![Page 44: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/44.jpg)
try{ SqlConnection con=new SqlConnection(bağlantı); SqlDataReader dr1; SqlDataReader dr2; SqlDataReader dr3; SqlCommand cmd1=new SqlCommand("SELECT * FROM Customers",con); SqlCommand cmd2=new SqlCommand("SELECT * FROM Orders",con); SqlCommand cmd3=new SqlCommand("SELECT * FROM [Order Details]",con); con.Open(); dr1=cmd1.ExecuteReader(); dr2=cmd2.ExecuteReader(); dr3=cmd3.ExecuteReader(); con.Close();
}
catch(Exception hata)
{ Console.WriteLine(hata.Message);}
Ado.Net 2.0 – MARS Çoklu Aktif Ado.Net 2.0 – MARS Çoklu Aktif Sonuç Kümeleri (Multiple Active Sonuç Kümeleri (Multiple Active Result Sets)Result Sets)
![Page 45: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/45.jpg)
Ado.Net 2.0 – MARS Çoklu Aktif Ado.Net 2.0 – MARS Çoklu Aktif Sonuç Kümeleri (Multiple Active Sonuç Kümeleri (Multiple Active Result Sets)Result Sets)
Ado.Net 1.0 / 1.1
![Page 46: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/46.jpg)
Ado.Net 2.0 – MARS Çoklu Aktif Ado.Net 2.0 – MARS Çoklu Aktif Sonuç Kümeleri (Multiple Active Sonuç Kümeleri (Multiple Active Result Sets)Result Sets)
Ado.Net 1.0 / 1.1
SqlCommand cmd1=new SqlCommand("SELECT * FROM Customers",con1);SqlCommand cmd2=new SqlCommand("SELECT * FROM Orders",con2);SqlCommand cmd3=new SqlCommand("SELECT * FROM [Order Details]",con3);
![Page 47: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/47.jpg)
Ado.Net 2.0 – MARS Çoklu Aktif Ado.Net 2.0 – MARS Çoklu Aktif Sonuç Kümeleri (Multiple Active Sonuç Kümeleri (Multiple Active Result Sets)Result Sets)
![Page 48: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/48.jpg)
MARS (Mutliple Active Result Sets)MARS (Mutliple Active Result Sets)
![Page 49: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/49.jpg)
Ado.Net 2.0 – Toplu Güncelleştirme Ado.Net 2.0 – Toplu Güncelleştirme (Batch Update)(Batch Update)Birden fazla sql ifadesinin Birden fazla sql ifadesinin tek bir seferdetek bir seferde
çalıştırılması.çalıştırılması.
DataAdapter için gDataAdapter için güncelleme işlemlerinin üncelleme işlemlerinin toplu toplu olarak hangi periyottaolarak hangi periyotta gerçekleştirileceğini gerçekleştirileceğini belirtir. belirtir.
public override int UpdateBatchSize {get;set;}
UpdateBatchSizUpdateBatchSize e
DeğeriDeğeriKomut Çalışma ŞekliKomut Çalışma Şekli
00 Sunucunun desteklediği en büyük Sunucunun desteklediği en büyük boyutta 1 keredeboyutta 1 kerede
11 Hepsi ayrı ayrı (UpdateBatchSize Hepsi ayrı ayrı (UpdateBatchSize devre dışı)devre dışı)
nn n seferde 1’ er keren seferde 1’ er kere
![Page 50: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/50.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing)Birden fazla sql komutunun Command nesneleri Birden fazla sql komutunun Command nesneleri
yardımıyla, yardımıyla, eş zamanlıeş zamanlı ve ve uygulamanın çalışmasına uygulamanın çalışmasına paralelparalel olarak yürütülebilmesi imkanı. olarak yürütülebilmesi imkanı.
![Page 51: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/51.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing)
![Page 52: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/52.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing)
BeginExecuteNonQuery
BeginExecuteReaderBeginExecuteXmlRead
erEndExecuteNonQueryEndExecuteReaderEndExecuteXmlReader
IAsyncResult
Anahtar İlişkiAnahtar İlişki
![Page 53: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/53.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing)
Polling Modeli
IAsyncResult tipinden nesne örneği ile sahip IAsyncResult tipinden nesne örneği ile sahip olunan olunan process’ inprocess’ in tamamlanıp tamamlanmadığı tamamlanıp tamamlanmadığı sürekli sürekli olarakolarak kontrol edilir. kontrol edilir.
![Page 54: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/54.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing) Polling Modeli
![Page 55: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/55.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing)
Callback Modeli
AAsenkron olarak çalışan sql komutlarının senkron olarak çalışan sql komutlarının işleyişlerinin sona erdiği noktalardaişleyişlerinin sona erdiği noktalarda yürürlüğe yürürlüğe giren giren metodlarımetodları bünyesinde barındıran bir bünyesinde barındıran bir tekniktir.tekniktir.
![Page 56: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/56.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing) Callback Modeli
![Page 57: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/57.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing)
Callback Modeli
public IAsyncResult BeginExecuteNonQuery public IAsyncResult BeginExecuteNonQuery ((AsyncCallback callback, object stateObje callback, object stateObjecct);t);
public IAsyncResult BeginExecuteReader public IAsyncResult BeginExecuteReader ((AsyncCallback callback, object stateObje callback, object stateObjecct);t);
public IAsyncResult BeginExecuteXmlReader public IAsyncResult BeginExecuteXmlReader ((AsyncCallback callback, object stateObje callback, object stateObjecct); t);
![Page 58: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/58.jpg)
Ado.Net 2.0 – Asenkron Komut Ado.Net 2.0 – Asenkron Komut Yürütmek (Asynchronous Command Yürütmek (Asynchronous Command Executing)Executing)
Wait Modeli
Eş zamanlı yürütülen komutlar tamamlanıncaya kadar Eş zamanlı yürütülen komutlar tamamlanıncaya kadar uygulamanın ve diğer komutların uygulamanın ve diğer komutların beklemesinibeklemesini istediğimizde.istediğimizde.
Farklı sunucularda çalışacak ve dönüş değerleri ilerleyen Farklı sunucularda çalışacak ve dönüş değerleri ilerleyen kod satırlarında kod satırlarında kullanılacakkullanılacak olan eş zamanlı sorgularda olan eş zamanlı sorgularda tercih edilebilir.tercih edilebilir.
WaitOne WaitAll WaitAny
![Page 59: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/59.jpg)
PollingPollingCallbackCallback
WaitHandleWaitHandle
![Page 60: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/60.jpg)
Ado.Net 2.0 – Bulk Data Kopyalama Ado.Net 2.0 – Bulk Data Kopyalama MekanizmasıMekanizması
BBir veritabanı tablosundan, başka bir hedef ir veritabanı tablosundan, başka bir hedef tabloya tabloya veri taşımaveri taşıma işleminin,Yönetimsel işleminin,Yönetimsel Kod Kod (Managed Code)(Managed Code) ile ile gerçekleştirilebilmesi.gerçekleştirilebilmesi.
TransferTransfer işlemi bir işlemi bir transactiontransaction içerisinde içerisinde yürütülüryürütülür..
Kaynak ve hedef tablolar Kaynak ve hedef tablolar farklıfarklı sunuculardaki sunuculardaki farklı veritabanlarındafarklı veritabanlarında bulunabilir.bulunabilir.
![Page 61: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/61.jpg)
Ado.Net 2.0 – Bulk Data Kopyalama Ado.Net 2.0 – Bulk Data Kopyalama MekanizmasıMekanizması
![Page 62: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/62.jpg)
Bulk Data Bulk Data Kopyalama MekanizmasıKopyalama Mekanizması
![Page 63: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/63.jpg)
Ado.Net 2.0 – Transactions MimarisiAdo.Net 2.0 – Transactions Mimarisi
Veri Sağlayıcı (Data Provider)’ dan Veri Sağlayıcı (Data Provider)’ dan bağımsızbağımsız bir yapı sunar.bir yapı sunar.
OtomatikOtomatik olarak transactionların olarak transactionların açılmasıaçılması ve ve kapatılmasıkapatılması sağlanmıştır. sağlanmıştır.
Dağıtık (Distributed) TransactionDağıtık (Distributed) Transaction modelinde modelinde COM+ nesnelerin yazılmasına (dolayısıyla COM+ nesnelerin yazılmasına (dolayısıyla ContextUtil kullanılmasına) ContextUtil kullanılmasına) gerek yokturgerek yoktur..
DTC Dağıtık Transaction Yöneticisi DTC Dağıtık Transaction Yöneticisi (Distributed Transaction Coordinator) (Distributed Transaction Coordinator) otomatik olarakotomatik olarak devreye girer. devreye girer.
![Page 64: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/64.jpg)
Ado.Net 2.0 – Transactions MimarisiAdo.Net 2.0 – Transactions Mimarisi
LightWeight LightWeight TransactionsTransactionsLightWeight LightWeight TransactionsTransactions
OleTxTransactions
OleTxTransactions
Mimari temel olarak iki tip transaction Mimari temel olarak iki tip transaction modeli içerir.modeli içerir.
Tek veri kaynağı Tek veri kaynağı üzerinde çalışır.üzerinde çalışır.Tek veri kaynağı Tek veri kaynağı üzerinde çalışır.üzerinde çalışır.
Farklı veri Farklı veri kaynakları kaynakları
üzerinde ortak üzerinde ortak çalışır.çalışır.
Farklı veri Farklı veri kaynakları kaynakları
üzerinde ortak üzerinde ortak çalışır.çalışır.
![Page 65: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/65.jpg)
Ado.Net 2.0 – Transactions MimarisiAdo.Net 2.0 – Transactions Mimarisi
LightWeight TransactionsLightWeight TransactionsLightWeight TransactionsLightWeight Transactions
using (TransactionScope tsScope = new TransactionScope()) { using (SqlConnection con = new SqlConnection("data source=localhost;database=AdventureWorks;integrated security=SSPI")) { SqlCommand cmd = new SqlCommand("INSERT INTO Books (BookPrice,Name,Category,PubDate) VALUES (1000,'C#','Computer','1.1.2006')", con); con.Open(); cmd.ExecuteNonQuery(); tsScope.Complete(); }}
![Page 66: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/66.jpg)
Transaction MimarisiTransaction Mimarisi
![Page 67: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/67.jpg)
Ado.Net 2.0 – Binary SerileştirmeAdo.Net 2.0 – Binary Serileştirme
DataTable ve DataSet nesneleri için gerçek DataTable ve DataSet nesneleri için gerçek anlamda binary serileştirme imkanı anlamda binary serileştirme imkanı sağlanmıştır.sağlanmıştır.
RemotingFormat = SerializationFormat.Binary;RemotingFormat = SerializationFormat.Binary;
![Page 68: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/68.jpg)
Asp.Net 2.0 ile Gelen Asp.Net 2.0 ile Gelen Yenilikler Yenilikler
Asp.Net 2.0 ile Gelen Asp.Net 2.0 ile Gelen Yenilikler Yenilikler
![Page 69: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/69.jpg)
Ado.Net 2.0 – OnDemand CompilingAdo.Net 2.0 – OnDemand Compiling
Web uygulamasına ait kodların, Web uygulamasına ait kodların, yeniden yeniden derlemeye gerek duyulmadanderlemeye gerek duyulmadan güncellenmesidir.güncellenmesidir.
Kaynak kod dosyası veya sunu katındaki Kaynak kod dosyası veya sunu katındaki üyelerdeki değişikliklerin, kullanımdaki üyelerdeki değişikliklerin, kullanımdaki sürüme gelecek ilk talep ile birlikte sürüme gelecek ilk talep ile birlikte yanısıtılmasını sağlar.yanısıtılmasını sağlar.
![Page 70: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/70.jpg)
OnDemand CompilingOnDemand Compiling
![Page 71: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/71.jpg)
Asp.Net 2.0 - CrossPage PostingAsp.Net 2.0 - CrossPage Posting
BBir ir form’ dan, başka bir form’ a verilerin form’ dan, başka bir form’ a verilerin Post BackPost Back tekniğine göre tekniğine göre taşınabilmesini taşınabilmesini sağlar.sağlar.
Hedef form üzerinden, Hedef form üzerinden, kaynak forma ait kaynak forma ait referanslarreferanslar ele alınabilir. ele alınabilir.
CrossPage CrossPage PostbackPostback
Hedef.aspxHedef.aspxForm.aspxForm.aspx
![Page 72: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/72.jpg)
Asp.Net 2.0 - CrossPage PostingAsp.Net 2.0 - CrossPage Posting
Bir sayfaya Bir sayfaya birden fazla sayfadanbirden fazla sayfadan Cross Cross Page Post Back işlemi yapılabilir.Page Post Back işlemi yapılabilir.
CrossPage CrossPage PostbackPostback
Hedef.aspxHedef.aspx
Form1.aspxForm1.aspx
Form2.aspxForm2.aspx
![Page 73: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/73.jpg)
Cross Page PostingCross Page Posting
![Page 74: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/74.jpg)
Asp.Net 2.0 – Master PagesAsp.Net 2.0 – Master Pages
Master Page, uygulandığı diğer aspx Master Page, uygulandığı diğer aspx sayfalarının sayfalarının nasıl görünmesinasıl görünmesi gerektiğine karar veren bir gerektiğine karar veren bir şablondurşablondur..
ContentPlaceHolderContentPlaceHolder bileşeni bileşeni sayesinde, Master Page' leri sayesinde, Master Page' leri uygulayan diğer aspx sayfalarının, uygulayan diğer aspx sayfalarının, istenilen içeriğeistenilen içeriğe sahip olması sahip olması sağlanır. sağlanır.
Master Page’ ler normal bir aspx Master Page’ ler normal bir aspx sayfası gibi sayfası gibi tasarlanabilirtasarlanabilir,, html, html, image, server control gibi üyeleri image, server control gibi üyeleri içerebilir. içerebilir.
![Page 75: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/75.jpg)
Asp.Net 2.0 - MasterPagesAsp.Net 2.0 - MasterPages
Statik ÖğelerStatik Öğeler
Dinamikİçerik
Default.aspx
![Page 76: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/76.jpg)
Asp.Net 2.0 - MasterPagesAsp.Net 2.0 - MasterPages
Master Page' i uygulayan bir aspx sayfası Master Page' i uygulayan bir aspx sayfası tarayıcıda açıldığında tarayıcıya gelen sayfa, tarayıcıda açıldığında tarayıcıya gelen sayfa, Master Page ile aspx sayfasının birleştirilmesiMaster Page ile aspx sayfasının birleştirilmesi sonucu ortaya çıkan başka bir aspx sayfasıdır.sonucu ortaya çıkan başka bir aspx sayfasıdır.
![Page 77: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/77.jpg)
Master PagesMaster Pages
![Page 78: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/78.jpg)
SqlDataSourceSqlDataSource AccessDataSourceAccessDataSource ObjectDataSourceObjectDataSource XmlDataSourceXmlDataSource SiteMapDataSourceSiteMapDataSource
Sunu Katmanı
Veri Kaynağı
Veri Kaynağı Kontrolleri
Asp.Net 2.0 - Veri Kaynağı Asp.Net 2.0 - Veri Kaynağı KontrolleriKontrolleri
![Page 79: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/79.jpg)
VeritabanıVeritabanıObjectDataObjectDataSourceSource
KontrolüKontrolü
ObjectDataObjectDataSourceSource
KontrolüKontrolü
SelectMetodu()SelectMetodu()InsertMetodu()InsertMetodu()
UpdateMetodu()UpdateMetodu()DeleteMethodu()DeleteMethodu()
CRUDCRUD
SelectMetodu()SelectMetodu()InsertMetodu()InsertMetodu()
UpdateMetodu()UpdateMetodu()DeleteMethodu()DeleteMethodu()
CRUDCRUD
İş nesnesiİş nesnesi
Sunu KatmanıSunu Katmanı
Asp.Net 2.0 - Veri Kaynağı Asp.Net 2.0 - Veri Kaynağı KontrolleriKontrolleri ObjectDataSourceObjectDataSourceObjectDataSourceObjectDataSource
![Page 80: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/80.jpg)
Veri Kaynağı KontrolleriVeri Kaynağı Kontrolleri
![Page 81: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/81.jpg)
Asp.Net 2.0 - TemalarAsp.Net 2.0 - Temalar
Bir web projesinin çeşitli bölümlerinin, Bir web projesinin çeşitli bölümlerinin, tamamının ya da web projesini barındıran tamamının ya da web projesini barındıran sunucunun tümüne ait web uygulamalarının, sunucunun tümüne ait web uygulamalarının, belirli font, renkbelirli font, renk gibi özelliklere göre gibi özelliklere göre ortak bir ortak bir noktadan şekillendirilmesinenoktadan şekillendirilmesine imkan sağlar. imkan sağlar.
Temalar değişik seviyelerde Temalar değişik seviyelerde (sayfa, uygulama, (sayfa, uygulama, makinemakine) uygulanabilir. ) uygulanabilir.
Temaların içerdiği Temaların içerdiği skinskin’ ler yardımıyla ’ ler yardımıyla sunucu sunucu kontrolleri içinkontrolleri için ortak görsel şablonlar ortak görsel şablonlar oluşturulabilir.oluşturulabilir.
![Page 82: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/82.jpg)
Asp.Net 2.0 - TemalarAsp.Net 2.0 - Temalar
![Page 83: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/83.jpg)
TemalarTemalar(Themes)(Themes)
![Page 84: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/84.jpg)
Asp.Net 2.0 - Site NavigationAsp.Net 2.0 - Site Navigation
Web sitelerinde kullanıcıların Web sitelerinde kullanıcıların neredenerede olduklarını bilmelerine ve diğer sayfalar olduklarını bilmelerine ve diğer sayfalar arasında arasında kolayca gezinmelerinekolayca gezinmelerine yardımcı yardımcı olan yeni bir yaklaşım modelidir. olan yeni bir yaklaşım modelidir.
Site içeriği Site içeriği XML tabanlıXML tabanlı tutulur. Bu site tutulur. Bu site yönetimi için yönetimi için büyük esneklikbüyük esneklik sağlar. sağlar.
![Page 85: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/85.jpg)
Asp.Net 2.0 - Site NavigationAsp.Net 2.0 - Site Navigation
SiteMap(Xml)
SiteMap(Xml)
SiteMapPathSiteMapPath(Web Control)(Web Control)SiteMapPathSiteMapPath
(Web Control)(Web Control)
MenuMenu(Web Control)(Web Control)
MenuMenu(Web Control)(Web Control)
TreeViewTreeView(Web Control)(Web Control)
TreeViewTreeView(Web Control)(Web Control)
SiteMapDataSourceSiteMapDataSource(Xml)(Xml)
SiteMapDataSourceSiteMapDataSource(Xml)(Xml)
![Page 86: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/86.jpg)
Asp.Net 2.0 - Site NavigationAsp.Net 2.0 - Site Navigation
![Page 87: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/87.jpg)
Site NavigationSite Navigation
![Page 88: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/88.jpg)
Asp.Net 2.0 - Üyelik ve Rol Asp.Net 2.0 - Üyelik ve Rol YönetimiYönetimi Kolay ve genişletilmiş Kolay ve genişletilmiş güvenlik, kullanıcı, güvenlik, kullanıcı,
erişim ve rolerişim ve rol yönetimleriniyönetimlerini içerir. içerir. Hem görsel araçlar’ lar Hem görsel araçlar’ lar (Asp.Net Web (Asp.Net Web
Application Administration)Application Administration) hemde hemde yönetimli sınıflar yönetimli sınıflar (managed class-(managed class-MemberShip)MemberShip) yardımıyla uygulanabilir. yardımıyla uygulanabilir.
Sql Server 2005Sql Server 2005 ve daha pek çok ve daha pek çok veritabanını üyelik sistemi için destekler.veritabanını üyelik sistemi için destekler.
![Page 89: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/89.jpg)
Asp.Net 2.0 - Üyelik ve Rol Asp.Net 2.0 - Üyelik ve Rol YönetimiYönetimi
Sunucu KontrolleriSunucu Kontrolleri<asp:Login><asp:Login>
Sunucu KontrolleriSunucu Kontrolleri<asp:Login><asp:Login> MemberShip APIMemberShip APIMemberShip APIMemberShip API
MemberShip ProvidersMemberShip Providers
AspNetSqlProviderAspNetSqlProvider X ProviderX Provider
AccessAccess SqlSql XX
![Page 90: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/90.jpg)
Asp.Net 2.0 – Profile YönetimiAsp.Net 2.0 – Profile Yönetimi
Web uygulamalarının Web uygulamalarının kişiselleştirilmesinikişiselleştirilmesini kolaylaştırmakkolaylaştırmak amacıyla geliştirilmiş yeni amacıyla geliştirilmiş yeni bir yönetim modelidir.bir yönetim modelidir.
MembershipMembership sisteminin alt parçalarından sisteminin alt parçalarından birisidir.birisidir.
![Page 91: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/91.jpg)
Asp.Net 2.0 – Profile YönetimiAsp.Net 2.0 – Profile Yönetimi
<profile> <properties> <add name="Kategorim" type="System.String" defaultValue="Dvd"/> <add name="KarsilamaMesajim" type="System.String" defaultValue="Kişisel Mesajınız"/> <add name="SonGirisZamanim" type="System.DateTime"/> <add name="ButonFontBuyuklugu" type="System.Int32" defaultValue="12"/> </properties></profile>
Profile.SonGirisZamanim = DateTime.Now;Profile.KarsilamaMesajim = txtMesaj.Text;Profile.Kategorim = ddlKategoriler.SelectedItem.Text;Profile.Save();
Konfigurasyon tarafı. Konfigurasyon tarafı. (web.config)(web.config)
Managed Code Tarafı.Managed Code Tarafı.
![Page 92: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/92.jpg)
Asp.Net 2.0 – Konfigurasyon Asp.Net 2.0 – Konfigurasyon YönetimiYönetimi Web uygulamalarında Web uygulamalarında konfigurasyonkonfigurasyon
bilgisinin bilgisinin yönetimli kod (managed code) yönetimli kod (managed code) tarafındantarafından ele alınabilmesi sağlanmıştır. ele alınabilmesi sağlanmıştır.
Web.configWeb.config gibi konfigurasyon gibi konfigurasyon dosyalarında dosyalarında bilgi düzenleme, parametre bilgi düzenleme, parametre ekleme, şifrelemeekleme, şifreleme işlemlerinde işlemlerinde kullanılabilir.kullanılabilir.
Web uygulamalarının Web uygulamalarının daha kolay ve daha daha kolay ve daha güçlü yönetimgüçlü yönetim sağlar. sağlar.
![Page 93: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/93.jpg)
TeşekkürlerTeşekkürler
Burak Selim ŞENYURTBurak Selim ŞENYURT
MVP (Visual Developer – Visual C#)MVP (Visual Developer – Visual C#)[email protected]@bsenyurt.com
www.bsenyurt.comwww.bsenyurt.com
![Page 94: Ready to Rock](https://reader036.vdocuments.us/reader036/viewer/2022062513/5564fb2fd8b42a021d8b5185/html5/thumbnails/94.jpg)
© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.