Aylık arşivler: Aralık 2006

Döviz Kurlarının MB’den alınması

Muhasebe, ERP, portal gibi uygulamalarda vazgeçilmez içeriklerinden biri de Merkez Bankası(MB) günlük döviz kurları konusunda kullanıcının bilgilendirilmesidir. Bu küçük ihtiyacı karşılamak için MB, kendi sitesinde günlük kurları, XML formatında sunuyor. Bizim yapacağımız işlem, bu xml dosyasını okuyup ilgili parse işlemlerini yapmaktır. Bunun için .NET Framework’ün, System.Net kütüphanesi kullanılır. Bu kütüphane, Internet uygulamalarını daha kısa sürede ve kolayca geliştirmek için gerekli sınıfları içermektedir. Bu bölümde HttpWebRequest ve HttpWebResponse sınıflarını kullanacağız. Okumaya devam et

Sevginin bittiği yer

Savaşların hiç eksik olmadığı, terörün sadece politik ve ekonomik boyutunun düşünüldüğü sosyal ve insani boyutunun gözardı edildiği, sevginin bittiği nefretin başladığı, “insan”ın sadece maddeyi üretim ve tüketimiyle tanımlandığı, rakamlarla konuşulduğu ve sonuçta eşyalaştığı, duyarsız bir bilince ve hızlı bir hafıza kaybına uğradığı, bilgi ve entellektüel sermayenin popüler kültürle şekillenip büyüdüğü(!), duygusallığın-ihtiyaç duymanın-anlaşılmanın eksiklik olarak nitelendirildiği, kişinin toplumsal, sosyal yeteneklerini kaybedip bireysel bir kısırdöngüye girdiği bu nikel kaplamalı dünyamızda bizi iç dünyamıza yönlendiren sadece organik olmadığımızı bize hissettiren bunun ötesinde büyük bir varlığı temsil ettiğimizi bize hatırlatan değerlerimizi korumamız gerektiğini unutmamak gerektiğini ve bunun da yolunun insanın, dış yığından kurtulup iç dünyasına doğru yolculuk yapmasından geçtiğini düşünüyorum.
Buna bir nebze de olsa yardımcı olacak bir parçayı paylaşmak istiyorum; usta neyzen Ömer Faruk Tekbilek‘ten “I love you” parçası.

Bonus olarak Cafe Anatolia albümünü öneriyorum

GridView’de alfabetik sayfalama

Datagrid, GridView kontrollerde sayfalama yaparken default olarak Numeric veya NextPrevious modları sunulur. Bununla beraber bu kontroller, özel bir sayfalama şekli oluşturmamıza da izin vermektedir. Bu yazıda özellikle cari hesap kartlarının, üyelerin listelendiği sayfalarda desktop uygulamalarından kalma bir alışkanlık olan alfabetik sıralamanın nasıl yapılacağını göreceğiz. Okumaya devam et

Web Servisin URL adresi değişirse

Bir web servisi yazdık ve bunu bir client uygulamasında referans olarak kullanmaya başladık. Fakat bir süre sonra bu web servisinin(*.asmx) yayın yaptığı Urladresi değişti. Bu durumda bilindiği gibi bu servisi kullanan uygulamada yeniden “Add Web Reference” menüsünden yeni Url adresini güncellememiz ve uygulamamızı recompile etmemiz gerekir. Bu işlemi yaptığımızda VS.NET, otomatik olarak gerekli proxy nesnesini oluşturur. (Ve client uygulamamız, bu proxy nesnesi üzerinden web servisiyle haberleşir.)
Her Url adresi değişikliğinde client uygulamasını yeniden derlemek deployment açısından pek mantıklı bir fikir değildir. .NET Framework, bu yönteme alternatif olarak değişikliğin kolayca yapılacağı bir yol sunar; Okumaya devam et

Bir uygulamayı aynı anda birden fazla çalıştırmamak

Bir .NET uygulamasının aynı anda sadece bir örneğini(single instance) çalıştırmak için birçok yöntem kullanılır. Burada bu yöntemlerden en çok kullanılan ve en hızlı olan mutex metodunu kullanımını örneklendireceğiz. Mutex(Mutual Exclusion) fonksiyonu, belli kaynakların yalnızca bir thread tarafından kullanılmasını sağlayan böylece processlerin birbirini engelleme sorununu ortadan kaldıran threading işleminde önemli rol oynayan bir işletim sistemi nesnesidir. Bir mutex’i, programların bir t zamanında sadece bir kere çalışmasını sağlamak amacıyla geliştirilmiş senkronizasyon tabanlı kilit yapısı olarak düşünebiliriz. Okumaya devam et

SQL’de veri özetleme ve gizli “OLAP raporlama”

SQL dilininin sunduğu gruplama özelliklerini kullanarak doğrudan veritabanından çektiğimiz bir raporu belli kriterlere göre kırabilir ve alt özet oluşturabiliriz. SQL’in ROLLUP ve CUBE komutları, verileri hızlı bir şekilde özetlememizi sağlar. SQL Server 6.5 ve Oracle 8i ile birlikte gelmiş bu deyimler, özellikle herhangi bir OLAP yatırımı, uygulaması kurmadan etkili istatiksel sonuçlar çıkarmamıza imkan verir. Bu yazıda SQL Server tarafında bu komutları örneklendirmeye çalışacağız. Okumaya devam et

SQL Server Language ve Collation kavramı

SQL Server Language ve Collation Nedir ?

Bu makalede SQL Server’da language ve collation kavramlarının farklılıklarından bahseceğiz. Language kavramı, mesajlar, date/time, ay/gün isimleri, para formatı ve birimi gibi yerel bilgileri desteklemekle sınırlıdır. SQL Server, kendi içerisinde birçok dile ait yerel bilgileri taşır. Bu bilgiler, kullanıcıların oturumlarına bağlı olarak uygulamalarda farklı dil değerlerini göstermelerini sağlamaktadır.
SQL Server’in desteklediği dil veya diller hakkında ayrıntılı bilgi almak için sp_helplanguage procedure kullanılabilir. Bu procedure, @language parametresi girilmezse tüm dillerin ayrıntısı listelenir. Language tanımlamaları, sys şemasına bağlı syslanguages tablosunda saklıdır.

--Bütün dilleri listeleyelim.
EXEC sp_helplanguage
--Sadece Türkçe dilinin bilgilerini görelim
EXEC sp_helplanguage turkish
--Doğrudan syslanguages tablosunu sorgulayalım.
SELECT * FROM sys.syslanguages WHERE alias='turkish'

SQL Server’da dil ayarı sunucu ve kullanıcı(oturum) bazında etkili olur. SQL Server’in instanceni kurarken language değerini de set edebiliriz. Sunucunun default dil değerini Sever Properties penceresindeki Advanced sekmesindeki Default Language bölümünden görebilir ve değiştirebiliriz. Programatik olarak T-SQL ile değiştirmek için sp_configure yordamı kullanılır. Okumaya devam et

VS 2005’de “The Directory Name is Invalid” hatası

Visual Studio 2005’de bir web site projesinde bazı anlarda bir kontrolün ID’sini değiştirmek istediğimizde The Directory Name is Invalid veya Failed to find definition hata mesajlarını alırız. Bu hatayla App_Code klasörü bulunan projelerde karşılaşılır. Özellikle başarısız bir derlemeden sonra bu hata mesajı çıkabilmektedir. Bu sorunu aşmak için;
..\Documents and Settings\\Local Settings\Application Data\Microsoft\WebsiteCache klasörün altında uygulamamız ile aynı isimde boş bir klasör oluşturmalıyız.

.NET içinde Active Directory işlemleri

.NET destekli programlama dillerini kullanarak Active Directory(AD) üzerinde sorgulamalar yapabiliriz. Bu amaçla .NET Framework, System.DirectoryServices kütüphanesini sunar. Bu kütüphanenin sınıflarını kullanarak, AD üzerinde sorgulamalar yapılabilir, ilgili nesnelere ulaşılabilir, kullanıcıların authentication işlemi sağlanabilir, web/windows/console uygulamalarından AD kayıt güncellemeleri gerçekleştirilebilir. DirectoryServices kütüphanesinin sınıflarına geçmeden önce AD’nin desteklediği LDAP standartından bahsedelim. Okumaya devam et