Cumartesi, Aralık 02, 2006

ASP.NET uygulamalarında Debug Modun Çalışmaması

Merhaba,

Geçenlerde Visual Studio 2005'te bir Web sitesi uygulaması üzerinde çalışmak istedim. Ancak Debug modda aşağıdaki hatayı aldım. Bu hatanın sebebi Windows Authentication'a izin vermediğiniz için Visual Studio gerekli yönetici haklarına sahip olmadığı için Debug modda çalışmanızı engeller.

Unable to start debugging on the web server. Debugging failed because
integrated Windows authentication is not enabled. Please see Help for
assistance


Bu hatanın çözümü ise

1. IIS(Internet Information Server)'i açın
2. Web Site'a sağ tıklayın ve Properties(Özellikler)sekmesini seçin
3. Directory Security(Dizin Güvenliği) sekmesini seçin ve "Anonymous access and
authentication control" ü seçin
4. Açılan pencerede "Allow Anonymous access" checkbox'ının tik'ini kaldırın ve
"Integrated Windows Authentication" checkbox'ını tik'lyin.

Bu adımları takip ederek Visual Studio'nuzda tekrar Debug modda çalışabilirsiniz.

Salı, Kasım 28, 2006

SQL Server'da Otomatik Artan Sahaların Başlangıç Değerini Değiştirme

Merhabalar,

SQL Server'daki tablolarda otomatik artan sahaların başlangıç değerlerini ve artış miktarlarını değiştirebilme ihtiyacı duyarız bazen. Şimdi bunu yapabilmek için küçük bir ipucu vereyim.

Aşağıdaki sorgu çalıştırıldığı zaman istediğimiz işlemi gerçekleştiriyoruz.

DBCC CHECKIDENT (tablo_adi, ReSeed, baslangic_degeri)
GO


İyi Çalışmalar,

Cuma, Kasım 10, 2006

Dosya İşlemlerinde Path Sınıfı

Merhaba,

Dosya işlemleri yaparken Path diye bir sınıf vardır, belki dikkat etmişsinizdir, bu sınıfın dosya uzantılarını değiştirmeye yarayan ChangeExtension diye bir metodu var. Ancak bu metod her koşulda çalışmamaktadır. Örneğin sistem dosyalarının uzantısını değiştiremezsiniz.

' VB
Dim ourPath As String = "c:\boot.ini"
Path.ChangeExtension(ourPath, "bak")


// C#
string ourPath = @"c:\boot.ini";
Path.ChangeExtension(ourPath, "bak");


Bu kodlar boot.ini dosyası sistem dosyası olduğu için çalışmayacaktır.

İyi Çalışmalar,

Çarşamba, Kasım 08, 2006

Generics

Merhaba,

Bu sefer seçtiğim konu Generics kavramı niye bu konuyu seçtiğimi merak ediyorsunuzdur. Öncelikle Generic'leri kullanmanın yararlarından bahsederek bu merakınızı giderelim.

1) Çalışma zamanında oluşacak tip çevrim hatalarını en aza indirmeyi sağlar. Çünkü Object tipi ile çalışırken oluşacak tip dönüşüm hataları çalışma zamanında yakalanır. Ancak Generic'lerle çalışırken tip zorunluluğu olduğu için tip dönüşüm hataları derleme esnasında yakalanır.

2) Tip dönüşüm işlemleri Boxing ve UnBoxing'e neden olacağı için daha fazla bellek alanına ihtiyaç duyar ve bu da performansı düşürür. Generic kullanımında ise tip önceden belli olduğu için çevrime gerek kalmaz.

Bu kadar anlattık örnek vermezsek olmaz şimdi :

' VB(Sınıf yaratılması)
Class Obj
Public V1 As Object
Public V2 As Object
40 Chapter 1 Framework Fundamentals
Public Sub New(ByVal _V1 As Object, ByVal _V2 As Object)
V1 = _V1
V2 = _V2
End Sub
End Class


'Generic sınıf yaratılması
Class Gen(Of T, U)
Public V1 As T
Public V2 As U
Public Sub New(ByVal _V1 As T, ByVal _V2 As U)
V1 = _V1
V2 = _V2
End Sub
End Class


// C#(Sınıf yaratılması)
class Obj
{
public Object t;
public Object u;
public Obj(Object _t, Object _u)
{
t = _t;
u = _u;
}
}


//Generic sınıf yaratılması
class Gen
{
public T t;
public U u;
public Gen(T _t, U _u)
{
t = _t;
u = _u;
}
}


Generic sınıfları kullanırken ise;

'VB
Dim gb As New Gen(Of Double, Integer)(10.125, 2005)
Console.WriteLine(gb.V1 + gb.V2)


//C#
Gen gb = new Gen(10.125, 2005);
Console.WriteLine(gb.t + gb.u);


İyi Çalışmalar

Boxing ve UnBoxing

Merhaba,

Referens type'dan value type'a dönüşüm yapılıyorsa bu UnBoxing oluyor. Hemen örneğini de verelim.

' VB
Dim o As Object = 123
Dim i As Integer = CType(o, Integer)


// C#
object o = 123;
int i = (int) o;


Eğer Value type'dan referans type'a dönüşüm oluyorsa da buna Boxing adı verilir.

' VB
Dim i As Integer = 123
Dim o As Object = CType(i, Object)


// C#
int i = 123;
object o = (object) i;


Tabi bu örnekleri daha iyi anlamak için reference type değerlerin bellek bölgesinde bir adrese işaret ettiğini, value type'ların ise direk değeri içerdiğini hatırlamamızda fayda var.

İyi Çalışmalar

Salı, Kasım 07, 2006

String'leri Birleştirirken Dikkat Etmeli!

Uzun bir aradan sonra tekrar merhaba, tezdi kitapdı derken blogumdan sizlere seslenebilmek için tekrar vakit bulabildim. Bu sefer vereceğim ipucu eminim ki çoğu yazılımcı tarafından bilinmeyen bir konudur.

Stringlerle çalışırken birçok yazılımcının bilmediği birşeyi keşfettim. String ifadeleri birbiri ardına eklerken kullandığımız + operatörünün aslında bellekte gereksiz stringler yarattığını farkettim. Bir örnek ile açıklayalım en iyisi :

string s;

s = "bir";
s+= " deneme";
s+= " metni";
s+=" oluşturalım";


Bu ifadenin sonunda s değişkenimizde "bir deneme metni oluşturalım" ifadesi yer alır. Buraya kadar herşey normal, ancak bu işlem sonucunda 4 tane string değişken oluşturulur ve bunların hepsi bellekte yer kaplar, ancak biz sadece sonuncusunun referansına erişebiliriz, diğer 3'ü ise GarbageCollector tarafından toplanmayı bekleyerek bellekte yer işgal eder. Bundan kaçınmamız için tabi ki .NET framework içerisinde yöntemler mevcuttur :

1) String işlemler için Concat, Join ve Format metodlarını kullanmak

2) Çoklu string birleştirme işlemi için StringBuilder nesnesini kullanmak. Ona da örnek verelim de tam olsun :

string s;
StringBuilder sb = new StringBuilder(30);

sb.Append("bir");
sb.Append(" deneme");
sb.Append(" metni");
sb.Append(" oluşturalım");

s=sb.ToString();


İyi Çalışmalar

Perşembe, Ağustos 31, 2006

Tezimi yazıyorum

Uzun zamandır bloguma yeterince vakit ayıramammın sebebi önce kitap yazıyor olmam sonrasında ise tezimi yazıyor olmamamdır. Tez çalışmalarım hala devam etmektedir ve tahmini olarak 1 ay daha sürecektir bu çalışmalar, tez çalışmamı da bitirdikten sonra daha sağlam bir kafa ile tekrar kaldığımız yerden devam edeceğiz.

Perşembe, Ağustos 10, 2006

Binding Source Kullanırken

Merhaba,

Visual Studio 2005 ile birlikte gelen Binding Source kontrollerini eminim hepimiz çok sevdik. İşlerimizi inannılmaz kolaylaştırmaya başladı. Ancak bu kontrolü bir User Controlün içerisinde kullanıp Bindinglerini de verdiğimiz zaman hataya sebep olmaktadır. Yani kontolü yükleme işlemi başarısız olmaktadır. Bunun sebebi user controlün içerisinde kullanılan kontrollerin Binding'lerinin kontrol ilk yüklenmeye çalışıldığı zaman çalışması ancak binding source'ın null olmasından kaynaklı olarak da hata vermesidir, bunun yerine binding işlemlerini daha sonra manuel olarak bir metodu olarak çağırırsanız bu tip bir hata ile karşılaşmazsınız.

İyi Çalışmalar,

VS Team System'ı Source Controller Olarak Kullanmak

Merhaba,

Bu sefer VS Team System'ı Source Controller olarak kullanırken dikkatimi çeken birşeyden bahsedeceğim. Windows Formları üzerinde kullandığımızı ToolStrip ve ona banzer kontrollerin eğer varsayılan görünürlüğü true değilse bu kontroller seçildiğinde arayüz üzerinde değişiklik yaratmaya çalıştığı için sunucudan bu kontrolün içinde bulunduğu formu check-out'lamaya çalışıyor, ancak işlemi tamamlayamayıp Visual Studio ortamını kilitliyor. Bunun önüne geçmek için bu tip formlarınız varsa önceden formu check-out ile kendinize alın daha sonra form üzerinde değişiklik yapma işlemine gidin.

İyi Çalışmalar,

Visual Studio 2005 Mobil Cihaz Emülatörlerinin Ana Makineye Bağlanması

Bu sefer, mobil cihaz emülatörlerimiz ile ana bilgisayarımızın birbirine nasıl bağlanacağı hakkında bir ipucu vereceğim.

Ana bilgisayar ile emülatörü birbirlerine bağlayarak birbirleri arasında veri aktarımı yapabiliriz. Ancak veri aktarımı için Microsoft ActiveSync programının 4.1 sürümünü ana bilgisayarımıza kurmuş olmamız gerekmektedir. Daha sonra ise Visual Studio 2005 ortamını açıp Tools => Device Emulator Manager’ı seçip gelen emulatör seçim ekranından istediğimiz emulator’ü seçelim.



Seçtiğimiz emulatore sağ tıklayıp çıkan menüden Connect’i seçelim. Emulatorümüz çalışmaya başladıktan sonra tamamen açıldıktan sonra tekrar seçtiğimiz emulatore sağ tıklayalım ve açılan menüden Cradle seçeneğini seçelim.



Emulatörümüzü bağladıktan sonra ActiveSync programımızı çalıştıralım ve Guest Partnership seçeneği ile senkronize edeceğimizi belirtelim. Bu sayede senkronizasyon işlemlerini manuel yapmamıza olanak sağlayacaktır. Aksi takdirde e-posta, adres defteri gibi kişisel verileri senkronize etmeye başlayacaktır ki bu da uygulama test ederken bizim için gereksiz zaman kaybı olacaktır.

Salı, Haziran 06, 2006

Visual Studio'da Debug Mod'un Çalışmaması

ASP.NET uygulamasında bunun sebepleri aşikardır ve bilinen birşeydir ancak normal bir Windows uygulaması olunca işler değişir. Kolay kolay sebepleri bulunmamaz. Bunun nedenlerinden bir tanesini beliriyorum şimdi, geçenlerde yaklaşık 1 saatime neden oldu bu yaptığım dikkatsizlik bana :

Tools -> Projects And Solutions -> Build And Run -> On Run, when Build or Deployment Errors occurs seçeneğinde Launc old versions'ı seçmişseniz projeniz hata oluşurduğu taktirde eski versiyonu çalıştırmaya devam edecektir, bu yüzden de en son hatasız versiyon çalışacaktır ve sizin sonradan yazdığınız kodun breakpoint'ine hiçbir zaman girmeyecektir. Burada seçilmesi gereken seçenek Prompt to Launch olması daha sağlıklı olacaktır. Ne uygulamanız bir anda kesilecektir ne de siz uygulamanızın hatasız çalıştığını düşüneceksinizdir, hata olduğu taktirde sizi uyaracaktır zaten.

İyi Çalışmalar,

Pazartesi, Mayıs 22, 2006

Veritabanına Veri Eklerken Birkaç İpucu

Merhaba,

Hepimiz yaşamışızdır veritabanına veri aktarırken yaşanan sorunları, özellikle de ilişkisel veritabanlarındaki referential integrity sorunları her zaman zorlamıştır. Bu tip sorunları aşmak için yapılacak bir takım ipuçlarını buradan paylaşacağım.

I) Identity olan sahaya veri girmek için sorgunun başına

SET IDENTITY_INSERT tablo_adi ON

yazıp ondan sonra sorgumuza devam edersek identity olan sahaya veri ekleyebiliriz.
Not : Bu işlemden sonra yine identity girişleri otomatik olarak verilmeye devam edecektir.

II) Bir tablodaki kısıt kontrollerini ortadan kaldırmak için;

ALTER TABLE tablo_adi NOCHECK CONSTRAINT ALL bütün kısıtları görmezden gelerek veri girişine izin verir.

ALTER TABLE tablo_adi NOCHECK CONSTRAINT kisit_adi tablo üzerinde verilen kısıtın görmezden gelinerek veri girişine izin verir.

III) Bir tablodaki kısıtları tekrar aktif hale getirmek için;

ALTER TABLE tablo_adi CHECK CONSTRAINT ALL bütün kısıtları aktif halse getirerek veri girişine izin verir.

ALTER TABLE tablo_adi CHECK CONSTRAINT kisit_adi tablo üzerinde verilen kısıtın aktif hale getirilerek veri girişine izin verir.

İyi Çalışmalar,

Cuma, Mayıs 12, 2006

Can not Generate SSPI Context

Windows Server 2003 active directory kurulu bir makinenin üzerindeki SQL Server 2005'e Windows Authentication ile istemci makineden erişirken bu hatayı aldım. Sanırım 2-3 gün araştırdık hatanın nedenini. Bu hatadan kurtulmak için yapılması gerekenleri yazalım, aslında 2 madde ama yapılmazsa ölümcül olabiliyor, günlerinizi yiyebiliyor.

1) Windows Server 2003'ünüz üzerine gidip Active Directory kullanıcılarınızın Account özelliklerinden Account is trusted for delegation'ı aktif hale getirmeniz gerekiyor.

Administrative Tools => Active Directory Users And Computers => Users => Kullanıcıyı bulun sağ tıklayın => Properties => Account => Account Options => Account is trusted for delegation'ı seçili hale getirin.

2) Windows Server'a bağlandığınız Network Connection'ının IP Adresini kontrol edin. Bu adresin DNS'inde sunucunuzun IP'si yazıyor olması lazım. Kontrol etmek için
Command Prompt'ta nslookup server_ip yazın. Eğer böyle bir IP bulamazsa, manuel olarak Network ayarlarınızdan ekleyin.

İyi Çalışmalar,

Salı, Mayıs 09, 2006

MELL kurduktan sonra görüntülemeye çalışınca

MELL(Microsoft Enterprise Learning Library) kurulumu yaptıktan sonra makineme yüklediğim kitapları görüntülemek istediğimde aşağıdaki gibi bir hata aldım.

Unable to initialize the viewer. If
you have installed the viewer to your computer, please re-run the Setup
program. If you are accessing the viewer from a server, please contact your
System Administrator


Bu hatayı düzeltmek için "Windows\system32\msxml6.dll"inin adını "msxml6.dll.sav" olarak güncellerseniz bu hatayı almadan gönül rahatlığı ile çalışabilirsiniz.

Hata tahminimce Visual Studio 2005 veya SQL Server 2005'in bu dll üzerinde güncelleme işlemi yapması ve bu dll'in yapısını bozması olabilir.

İkinci yöntem için ise http://support.microsoft.com/kb/917583/en-us adresindeki adımları takip ediniz. Hangisi işinize gelirse artık :)

Perşembe, Mayıs 04, 2006

Team Foundation Server IP'si Değiştirme

Team Foundation Server IP'sini değiştirmek zorunda kalırsanız ilk önce Team Foundation Server'a bağlı istemcilerden bu Server'ın tanımlarını kaldırın. Bunu yapmak için her istemci makinede Team Explorer kısmından sunucuya olan bağlantıyı kaldırın ve Server listesinden de bunu çıkartın.

Daha sonra sunucu makinenin IIS'inden SharePoint Portal'ın IP'sini değiştiriniz daha sonra da server'ınızın IP'sini değiştirdikten sonra IIS'i restart ediniz.

Bu şekilde Team Foundation Server kurulu olan makinenin IP'sini sorunsuz değiştirebilirsiniz.

İyi Çalışmalar,

Salı, Nisan 25, 2006

Visual Studio Kurulumu Yaparken aldığım Bir Hata

Visual Studio kurulumu yaparken aşağıdaki gibi bir uyarı aldım. Bende yazdığı gibi makineme restart attım. Ancak bir de ne göreyim, restart atmama rağmen kurulum yapmak istediğimde aynı uyarıyı tekrar aldım.

Setup has detected that another program requires the computer to reboot. You must reboot the computer before installing Visual Studio .NET Prerequisites. Once the system reboots, you need to restart setup. Click OK to reboot. Click Cancel to exit setup and install later.

Eğer siz de bu durumla karşı karşıya kalırsanız manuel olarak registery editöründe biraz temizlik yapmanız gerekecek:)

Run => regedit.exe yazın. Açılan registery editöründe

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager anahtarını bulun ve bu anahtar içinde sağ taraftaki Name kısmında PendingFileRenameOperations registery'sini bulun ve bunun içinin boş olduğundan emin olun, boş değilse de temizleyin.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\
CurrentVersion\RunOnce registery'sinin de boş olduğundan emin olun

ve son olarak da HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\
CurrentVersion\RunOnceEx registery key'inin boş olduğunu doğrulayın.

Artık Visual Studio'yu kurabilirsiniz.

İyi Çalışmalar,

Pazartesi, Nisan 24, 2006

Visual Studio Team Foundation Server Kurulumu Yaparken Dikkat Edilmesi Gerekenler

Tekrar Merhaba,

2.5 günlük uğraşmanın sonucunda Team Foundation Server kurulumunu eksiksiz olarak bitirmiş bulunmaktayım:)Bu süreye server'ı sıfırdan kurma süresi de dahildir. Şimdi bu kurulum sırasında dikkat etmemiz gerekenlere burada yer vermeye çalışacağım:

I) Öncelikle domain altından mı yoksa workgroup altından mı kurulum yaptığınızı belirleyin. Ben domain altından kurulum yaptığım için bununla ilgili dikkat edilmesi gerekenleri yazacağım.

II) Domain kurulumu yapıyorsanız Domain\TFSSETUP, Domain\TFSSERVICE, Domain\TFSREPORTS, Domain\TFSPROXY(proxy kullanıyorsanız) kullanıcıları Active Directory altından tanımlayın. TFSSETUP kullanıcısına Domain Admini hakkı verin. Çünkü VSTFS'ı bu kullanıcı ile kuracağız.

III) Kuruluma geçmeden önce Windows SharePoint Services'in SP2 ile, MS Office Project 2003'ün, MS Office Excel'in, SQL Server 2005 Standart veya Developer Edition'ın SP1 ile kurulu olduğuna emin olunuz. Kurulu değillerse önce bunları kurunuz.

IV) VSTFS'ı kurmak için , Domain\TFSSETUP kullnıcısı ile sunucumuz üzerinden login oluyoruz. Visual Studio Team Foundation Server CD'sini çalıştırıp, Install Visual Studio Team Foundation Server seçeneğini seçerek kuruluma başlıyoruz. Benim kurduğum makinede Data Tier'da aynı makinede olduğu Single Server seçeneği ile kurulumu yaptım.

V) Kurulumu bitirdikten sonra http://localhost:8080/services/v1.0/Registration.asmx/ GetRegistrationEntries adresini tarayıcınızdan çalıştırın.



WssAdminService
http://:17012/_vti_adm/admin.asmx


kısmını bulun. Bir de IIS üzerinde Web Sites altında Sharepoint Centeral Administration'ı bulun. Sağ tıklayıp Properties'i seçin ve TCP Portunun 17012 olduğundan emin olun. Eğer değilse 17012 olarak düzeltin.

VI) Team Explorer'ı Server makineye kurun. Bunun için Visual Studio Team Foundation Server CD'sini çalıştırıp, Install Visual Studio Team Foundation Client'ı kurun.

VII) Visual Studio'yu çalıştırın Tools menüsünden Connect to Team Foundation Server'ı seçin bu kısımda Server'ınızın gelmiş olup olmadığını kontrol edin. Gelmemiş ise elinizle yeni bir sunucu olarak ekleyin.

VIII) Team Explorer penceresinden yeni bir Team Project yaratmayı seçin ve adımları takip edin. Eğer yaratma esnasında hata ile karşılaşmazsanız kurulum düzgün yapılmış demektir.

IX) Olası alabileceğiniz hatalar ise :

A) Error
Unable to connect to the Windows SharePoint Services at ....

Explanation
The Project Creation Wizard was not able to connect to the Windows SharePoint Services at . The reason for the failed connection cannot be determined at this time. Because the connection failed, the wizard was not able to complete creating the Windows SharePoint Services site.


ise C:\Program Files\Common Files\Microsoft Shared\web server extensions\60\BIN klasörüne konumlanın ve Command Prompttan stsadm.exe -o upgrade -forceupgrade'i çalıştırın. Windows SharePoint'inizi update edecektir bu komut. Bu sayede Windows SharePoint'e bağlanma sorununuz ortadan kalkacaktır.

B) Eğer istemci makinede Projeyi yaratma esnasında

Error
TF30170: The plugin Microsoft.ProjectCreationWizard.WorkItemTracking failed during task WIs from group WorkItemTracking.

Explanation
Plugin error text: “TF26213: Saving work items failed. Check the log for more details.”

User Action
Contact your Team Foundation Server administrator.

Warning
TF30144: The New Team Project Wizard attempted to roll back all of the steps taken to this point but was unsuccessful. Contact your Team Foundation Server administrator for further instructions.


hatası ile karşılaşıyorsanız istemci makineye gidip aşağıdaki adımları deneyin.

1) Visual Studio'yu kapatın
2) C:\Documents and Settings\\Local Settings\Application Data\Microsoft\Team Foundation\1.0 klasörüne konumlanın.
3) Cache klasörünün adını Cache.preserve olarak değiştirin.
4) Visual Studio'yu yeniden çalıştırıp proje yaratmayı tekrar deneyin.

C) Proje yaratımı başarılı ancak Proje Portalının bazı kısımları veritabanındaki verileri okuyamıyorsa

SQL Server Reporting Services Home Web Sitesine(http://localhost/Reports/) gidip o Properties sekmesini seçtikten sonra TfsOlapReportDS'ye tıklayıp kullanılan password'ü güncelleyin. Aynı işlemi TfsReportDS için de yapınız.

Benim aldığım hatalara karşı yaptıklarım bunlardı. Şu an sorunsuz bir biçimde işlem yapabiliyorum.

Not : İstemci makineye Team Explorer kurmadan önce Sunucu makineye kurmuş olduğunuza emin olunuz.

İyi Çalışmalar,

Pazar, Nisan 23, 2006

Visual Studio Team Foundation Server Kurulumu

20 Nisan Perşembe günü şirkette uygulama geliştirmek için takımın entegrasyonunun sağlanması amacıyla Visual Studio Team Foundation Server kurmaya başladım. Server kurulumu bitti ancak henüz bir proje yaratıp da Team Foundation Server'da yayınlanması konusunda sıkıntılarımız var. Hakikaten kurulumu 4 gün sürüyor dedikleri Team Foundation Server ile ilgili sıkıntılarımız Pazartesi günü sona erecek diye tahmin ediyorum, bu sayede 3 günde kurulumu bitmiş olacak:)Bütün sorunları hallettikten sonra da bu kurulumla ilgili dikkat edilmesi gerekenleri de burada paylaşıyor olacağım.

İyi Çalışmalar,

Perşembe, Nisan 20, 2006

ASP.NET üzerinden SQL Server Kullanma

ASP.NET uygulamalarında SQL Server kullanırken Windows Authentication ile bağlanabiliyorsunuz. Bunun için tek yapmanız gereken veritabanınıza MakineAdi/ASPNET kullanıcısını eklemektir.
Bağlantı cümlesi örneği ise "server=localhost;database=Veritabanı_Adi;Trusted_Connection=true"

İyi Çalışmalar,

Visual Studio ile Mobil Web Uygulaması Geliştirme

Visual Studio .Net ile Mobil Web Uygulaması Geliştirirken, normal Internet Explorer ile yaptığınız Web Sitesini test edebileceğiniz gibi Microsoft Mobile Explorer 3.0 ile de cep telefonu görünümünde sitenizin nasıl göründüğünü test edebilirsiniz. İndirmek için http://www.devhood.com/tools/tool_details.aspx?tool_id=52 adresine bakabilirsiniz.

Not : Visual Studio .Net'in tüm sürümlerine uyumludur

İyi Çalışmalar,

Merhaba

Artık Yeni blogumdan teknoloji ile ilgili küçük ipuçlarını ve günlerinizi kurtaracak bilgilendirmeleri buradan paylaşacağım:)