Birlikte Geliştirdik 03 Ekim 2011 Burak-Selim-Senyurt .Net Framework 4.0, Asp.Net 4.0, Entity Framework, WCF 4.0 Hazırlayacağımız çorbamızda çok kıymetli yardımcılarımız da var. Son katılımcılarımız ile gerçekleştirmekte olduğumuz Asp.Net eğitiminden çok güzel fikirler ve örnekler çıkmaya devam ediyor. Geliştireceğimiz örnek Solution içerisinde Entity Framework, WCF Service, LINQ, Asp.Net Web Application, Web User Control, LINQ gibi pek çok kavram yer almakta. Temel olarak başlangıçtaki senaryomuz ise şu : “Asp.Net web uygulamamızda yer alan bir Web User Control’ ümüz, AdventureWorks veritabanında yer alan herhangibir Product' satırına ait bazı alan bilgilerini gösterecek” [Daha fazla]
Tek Fotoluk İpucu-30 (Entity Sorgusundan Excel Dosyasına) 13 Eylül 2011 Burak-Selim-Senyurt .Net Framework 4.0, Tek Fotoluk Ipucu Merhaba Arkadaşlar, .Net Framework 4.0' ın getirdiği pek çok yenilik sayesinde Office gibi API' leri kullanmamız çok daha fazla kolaylaştı. Örneğin bir Entity sorgusunun sonucunu Excel dosyasına aktarmak için daha basit kodlamalar yapabiliyoruz. Nasıl mı? EntityToExcel... [Daha fazla]
Tek Fotoluk İpucu-26 (Runtime Method Çağrımı) 19 Ağustos 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Sanırım bir önceki tek fotoluk ipucunda çalışma zamanındaki bir nesne özelliğinin değerinin nasıl alınabileceğini görmüştük. Elbette reflection konulu işlerde bir nesne örneğinin bir metodunun çağırılması da söz konusu olabilir. N... [Daha fazla]
Tek Fotoluk İpucu-25 (Runtime Value ve Extension Method) 18 Ağustos 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Özellikle Reflection kullandığımız bazı çalışma zamanı senaryolarında, nesnelerin özellik değerlerini elde etmek istediğimiz durumlar da söz konusu olabilir. Çok basit bir senaryo göz önüne alındığında bunun için bir Extension m... [Daha fazla]
Tek Fotoluk İpucu-20 (Except Sorgusu) 19 Temmuz 2011 Burak-Selim-Senyurt C#, LINQ, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Hemen hepimiz LINQ sorgularını kullanıyoruz(Tabi aramızda halen .Net 2.0 ve altı ile çalışan zavallılar da yok değil ) Lakin LINQ içerisinde çok enteresan extension method' lar olduğunu da biliyor muyuz? Örneğin, şehir bazındaki müşteri listesini ... [Daha fazla]
Tek Fotoluk İpucu-17 (Query ile Daha Şık Kodlama) 12 Temmuz 2011 Burak-Selim-Senyurt C#, C# 3.0, C# 4.0, Tek Fotoluk Ipucu Merhaba Arkadaşlar, LINQ sorgularını sadece sorgulamak için kullandığımızı da nereden çıkartıyorsunuz Aslında onları kodlarımızı daha şık hale getirmek için de kullanabiliriz? Nasıl mı? İşte küçük bir örnek ShortCodes.rar (22,69 kb)
Tek Fotoluk İpucu–14 (Compiled Query) 06 Temmuz 2011 Burak-Selim-Senyurt Entity Framework, Tek Fotoluk Ipucu Entity Framework ile Compiled Query' ler hazırlayabileceğinizi ve daha performanslı sorgulamalar yaptırabileceğinizi biliyor muydunuz? [Daha fazla]
Tek Fotoluk İpucu - 5 (Rastgele Sıralı Generic List Koleksiyonu) 24 Haziran 2011 Burak-Selim-Senyurt C#, C# 3.0, C# 4.0, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Elinizde List tipinden bir koleksiyon var ve içerisindeki nesnelerden rastgele sırada yeni bir liste kullanmak istiyorsunuz. Ne yaparsınız? İşte cevabı RandomList.rar (22,53 kb)
Tek Fotoluk İpucu - 1 (Tek Where ya da n adet Where) 19 Haziran 2011 Burak-Selim-Senyurt LINQ, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Bazen bir fotoğraf bin kelimeye bedeldir derler. Bin kelime konusunda şüpheliyim ama bir fotoğrafın anlatım gücü açısından çok önemli katma değerlere sahip olduğuna inanıyorum. İşte size LINQ konusunda performans ipucu verecek bir fotoğraf. Baka... [Daha fazla]
LINQ Sorgusu mu? ForEach mi? Bir Türlü Karar Veremedim 27 Mayıs 2010 Burak-Selim-Senyurt C#, LINQ Bilim Kurgu fanatiklerinin kafasında her zaman hayranı oldukları filmlerden kesitler, sahneler kalır. Matrix filmini izleyenler eminimki Neo' ya uzatılan kırmızı ve mavi hap serenatını gayet iyi hatırlayacaktır. Morpheus haplardan birisinde Alice Harikalar Diyarının kapılarını ardına kadar açabileceğini ifade ederken, diğer hapı yuttuğunda, Neo' nun yatağında hiç bir şey olmamış gibi uyanacağını ve tüm bunların bir hayalden ibaret olduğunu düşüneceğini belirtir. Tabi Neo amacına ulaşmak için zaten hangi hapı içmesi gerektiğini biliyordur ki son bölümde aslında gerçekten hapı yutmaktadır [Daha fazla]
Entity Framework - POCO ve Lazy Loading 10 Mayıs 2010 Burak-Selim-Senyurt Entity Framework Hatırlayacağınız üzere bir önceki yazımızda Ado.Net Entity Framework içerisinde POCO(Plain Old CLR Object) nesnelerinin kullanımını incelemeye çalışmıştık. Örneğimizde kullanmış olduğumuz LINQ sorgusu basit bir Join işlemini gerçekleştirmekteydi. Tabi Join sorgusu kullandığımız için gözden kaçırdığımız ufak ama bir o kadar da önemli bir vaka oluşmaktadır. Bu vakayı ele almak için program kodunu biraz daha değiştirdiğimizi ve aşağıdaki hale getirdiğimizi düşünelim. [Daha fazla]
1652 Sayfalık İçerik - Tüm Blog Girdilerim 24 Şubat 2010 Burak-Selim-Senyurt Teknik Dışı Konular Bir yazılımcı sıkıldığında ne yapar? İşte bu günün sorusu...Büyük ihtimalle işlerinden bunalmış veya bazı şeyleri kafaya taktığından içinden çıkılması güç bir psikoloji altına girmiş bir yazılımcının yapacağı şeyler aslında yine teknoloji merkezli olacaktır. Peki ya siz olsanız ne yaparsınız? [Daha fazla]
Ado.Net Data Services 1.5 CTP2 - Web Friendly Feeds 31 Ekim 2009 Burak-Selim-Senyurt Ado.Net Data Services Ado.Net Data Services v1.5 CTP1 ile gelen Web Friendly Feeds özelliği, CTP2 sürümünde eklenen iki yeni eşleştirme seçeneği ile genişletilmiştir. Durun bir dakika...Web Friendly Feeds nedir? Undecided Arkadaşlıktan farklı bir şey olsa gerek Wink Öncelikle bu konuya açıklık getirmek gerekiyor. Web Friendly Feeds özelliği, bir Entity'nin herhangibir özelliğini(Property), Ado.Net Data Service' inden çıktı olarak üretilen Atom içeriğindeki bir elemente eşleştirmekte kullanılmaktadır. Nitekim servisin ürettiği varsayılan Atom içeriğinde yer alan author name, url, title vs... gibi bilgiler zaten standart olarak kabul edilmiştir ve bu nedenle söz konusu elementleri değerlendiren yorumlayıcılara, var olan Entity içeriğindeki bazı özellik değerlerinin aktarılması istenebilir. Bir başka deyişle, servisin ürettiği içeriğin kaynağındaki özelliklerin çıktıda map edileceği yerler, Atom içeriğindeki belirli noktalar olarak belirlenebilir. [Daha fazla]
PLINQ - ForAll [Beta 1] 28 Mayıs 2009 Burak-Selim-Senyurt LINQ, PLINQ Bildiğiniz gibi bir süredir LINQ sorgularının paralel çalıştırılması ile ilişkili çalışmalarıma ve araştırmalarıma devam etmekteyim. Bu yazımdaki konumuz ise System.Linq.ParallelEnumerable static sınıfı içerisinde tanımlanmış olan ForAll genişletme metodudur(extension methods). [Daha fazla]
Paralel Sorgularda İstisna Yönetimi(Exception Handling) [Beta 1] 26 Mayıs 2009 Burak-Selim-Senyurt LINQ, PLINQ Yönetimli kod(Managed Code) tarafında istisna yönetimi oldukça önemli konulardan birisidir. Uygulamaların veya kod süreçlerinin istem dışı sonlanmasının önüne geçilmek istendiği durumlarda, basit try...catch...finally bloklarından yararlanabilir yada Enterprise Library gibi kütüphanelerin sunduğu bloklardan faydalanarak istisna yönetimini üst seviyede sağlayabiliriz. [Daha fazla]
PLINQ - Paralellik Altında Ardışık(Sequential) Çalışmak [Beta 1] 25 Mayıs 2009 Burak-Selim-Senyurt LINQ, PLINQ Bir önceki blog yazımızda PLINQ ifadelerinde sıralama konusuna değinmeye çalışmıştık. Bu yazımızda ise, paralel olarak çalıştırılan LINQ sorguları içerisinde, ardışık(Sequential) olarak nasıl işlem yapılabileceğini incelemeye çalışacağız. [Daha fazla]
PLINQ - Sıralamayı(Ordering) Korumak [Beta 1] 23 Mayıs 2009 Burak-Selim-Senyurt PLINQ Hatırlayacağınız gibi, PLINQ(Parallel LINQ) ile ilişkili ilk yazımda, LINQ sorgularının eş zamanlı olarak nasıl çalıştırılabileceğini incelemeye çalışmıştık. Hello World örneğimizde ağırlıklı olarak aşağıdaki sorgu üzerinde durmuştuk. [Daha fazla]
PLINQ (Parallel LINQ) - Hello World [Beta 1] 21 Mayıs 2009 Burak-Selim-Senyurt LINQ, PLINQ Bildiğiniz gibi son yazımı deniz kenarında bir kafede tatildeyken yazmıştım Wink Ama tatil bitti malesef ve tekrardan Morpheus' un sözleri kulaklarımda çınladı "Wellcome to the real world". Cry Yinede 1 haftalığınada olsa tatil yapabildiğime şükrediyorum. Gerçek dünyaya döndükten sonra tabiki bir süre adaptasyon sorunları ile karşılaşıyor insan doğal olaraktan. Bu adaptasyon sorunları içerisinde boğuşurken, neleri araştırabilirim diye düşünürken buluverdim kendimi. [Daha fazla]
LINQ Maceralarım 10 Nisan 2008 Burak-Selim-Senyurt C# 3.0, LINQ Language INtegrated Query(LINQ) mimarisi sayesinde CLR nesneleri(Common Language Runtime Objects) üzerinden SQL tarzı sorgu ifadeleri yazılabilmektedir. Hatta LINQ mimarisi, SQL veritabanı(LINQ to SQL) ve XML (LINQ to XML) kaynakları üzerindede kullanılabilmektedir. Özellikle IEnumerable arayüzünü uyarlayan tiplere ait nesne örnekleri için, Select, Where, GroupBy, Sum, Avg, Distinct ve daha pek çok bilinen sorgulama metodu uygulanabilmektedir. [Daha fazla]
C# 3.0: Derinlemesine Extension Method Kavramı 21 Mart 2008 Burak-Selim-Senyurt C# 3.0 Bilindiği üzere Language INtegrated Query(LINQ) mimarisinin uygulanışında C# 3.0(Visual Basic 9.0) ile birlikte gelen yenilikler oldukça önemli bir yere sahiptir. Bu yeniliklerin çoğu var olan .Net Framework 2.0 yapısını bozmadan genişletebilmek amacıyla tasarlanmıştır. Genişletme Metodları(Extension Methods) bu yeniliklerden sadece bir tanesidir. [Daha fazla]
Linq To Sql : Arka Planda Neler Oluyor? 19 Aralık 2007 Burak-Selim-Senyurt LINQ to SQL Veritabanı(Database) nesnelerinin programatik ortamda sınıf gibi tipler(Type) ve metod benzeri üyeler(Members) ile ifade ediliyor olması, bu tiplere ait nesne örnekleri üzerinden sorgulalamalar yapılabilmesi ihtiyacınıda ortaya çıkartmıştır. Bir veritabanı nesnesinin programatik taraftaki karşılığının nesne yönelimli(Object Oriented) bir dilde geliştirilmesi son derece kolaydır. Örneğin bir tablo(Table) göz önüne alındığında, bu tablonun kendisi bir sınıf(Class) olarak tasarlanabilir. Benzer şekilde, tablo içerisindeki alanlar(Fields) sınıf içinde yer alan birer özellik(Property) olarak düşünülebilir. [Daha fazla]
LINQ to SQL ile CRUD İşlemleri 15 Aralık 2007 Burak-Selim-Senyurt LINQ to SQL Language Integrated Query(LINQ) mimarisi özellikle programatik ortamlarda tasarlanan nesneler üzerinde, SQL cümlelerine benzer ifadeler ile sorgulamalar yapılmasına izin vermektedir. Çok doğal olarak veritabanı(database) tarafında yer alan tablo(Table), saklı yordam(Stored Procedure), görünüm(View), fonksiyon(Function) gibi unsurlarında programatik tarafta birer varlık(Entity) olarak ifade edilebilmesi, LINQ kurallarının SQL üzerindede gerçekleştirilebilmesini sağlamaktadır. Burada varlık katmanı(Entity Layer) olarakda düşünebileceğimiz yapı üzerinde yer alan nesneler, veritabanından çekilen sonuçları saklayabilmektedir. Bunun yanında programatik ortamdaki varlıklar üzerinde yeni varlık oluşturma, güncelleme, silme gibi operasyonlarda yapılabilmektedir. [Daha fazla]
Bağlantısız Katmanda LINQ 02 Nisan 2007 Burak-Selim-Senyurt C# Language Integrated Query (Dil ile tümleştirilmiş sorgu) yardımıyla yapabileceklerimiz saymakla bitmiyor. Aslında LINQ projesinin en önemli çıkış nedeni, Anders Hejslberg' ın anlatımıyla veri ve nesne eşitsizliğidir. (data!=objects) [Daha fazla]
LINQ: Daha Fazla Sorgu 21 Şubat 2007 Burak-Selim-Senyurt LINQ u günlerde hepimiz .Net Framework 3.0 ve getirileri üzerine yoğunlaşmış durumdayız. Özellikle mimari anlamda yapılan köklü değişimler söz konusu. Bu köklü değişiklikler; Windows uygulamalarının yeni yüzü olan WPF (Windows Presentation Foundation) ve XAML (eXtensible Application Markup Language), dağıtık mimariyi tek çatı altında toplamayı başaran WCF (Windows Communication Foundation), akış şemaları ve iş süreçlerinin .Net plaformuna dahil edilmesini sağlayan WF(Workflow Foundation) ve CardSpace olarak sıralanabilir. [Daha fazla]
C# 3.0 - İlk Bakışta XLINQ 22 Ekim 2006 Burak-Selim-Senyurt C# XLINQ (Xml Language Integrated Query) temel olarak LINQ modelinin Xml üzerine uyarlanabilmesini hedeflemektedir. Bildiğiniz gibi LINQ projesi ile, IEnumerable arayüzünü uygulamış .Net nesneleri üzerinde dil ile tümleştirilmiş sorgulamalar gerçekleştirilebilmektedir... [Daha fazla]