inicio mail me! sindicaci;ón

Bir Domain’deki Tüm Requestleri Diğer Bir Domaine Yönlendirmek

2006 yılında açmış olduğum vbulletin alt yapısını kullanan forumumda domain değişikliği gerçekleştirdim. Bu elbette tüm indexin kaybolması, kullanıcıların indexlenmiş konulara ulaşamaması anlamına geliyordu. Bunun için basit bir urlrewrite işlemi gerçekleştirerek, en azından kullanıcıların yeni domainde de aynı konulara ulaşmasını sağlamış oldum. Bu kodu eski domaininizin barındığı hostda .htaccess dosyasına yazmanız yeterli olacaktır.

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^eskidomanim.com [nc]
rewriterule ^(.*)$ http://yenidomainim.com/$1 [r=301,nc]

Nullable Tipler – ?? Operatorü

Nullable tipler bir değere sahip olabileceği gibi, undefined durumunda da olabilir. ?? operatoru null kontrolü yapmamızı sağlayarak nullable bir tipin değerini non-nullable bir tipe atamamızı kolaylaştırır. Ayrıca non-nullable tiplerin önüne ? konularak da bu tiplerin, nullable tipler gibi davranmasını sağlayabiliyoruz.

DateTime myDateTime = null; //nullable tip olmadığı için derleme zamanında hata verir.

Kullanımına basit bir örnek

DateTime? myDateTime = null; //sorunsuz çalışır

DateTime? yourDateTime = DateTime.Now;

DateTime dateTime = myDateTime ?? yourDateTime ?? DateTime.Now; // myDateTime null ise yourDateTime'ın değerini ata, o da null ise DateTime.Now'ın değerini ata

IIS’de Host Edilen Bir Web Uygulamasını AppStart Durumunda Debug Etmek

IIS’de host ettiğim bir web uygulamasını visual studio’da ctrl+shift+p tuş combinasyonu ile ya da Debug -> Attact to process menüsünü takiben açılan penceredeki ilgili process’i seçerek kolayca debug edebiliyordum. Ancak attach edilecek process’i açılan listede görebilmek için bu process’e ait web uygulamasının bir kez browser tarafından çalıştırılmış olması gerekiyordu. Kısaca bu yöntemle web uygulamasının AppStart durumunda gerçekleştirdiği işlemleri debug etme imkanı bulamıyordum.

Çözüm ise debug’a başlamak istediğiniz noktada System.Diagnostics kütüphanesinden gelen Debugger.Launch() methodunu çağırmak olacak. Bu sayede uygulama o noktaya işaret ettiği anda w3c process penceresi açılarak size debug’a başlayıp başlamamak istediğinizi soracak, böylece IIS’de host edilen bir web uygulamasını her durumunda debug edebileceksiniz.

parseInt Kullanımına Dikkat

Projelerimizin birinde JSON olarak aldığımız verilerden bir kısmını işlerken javascript’in parseInt methodundan yararlanıyorduk. "gün/ay/yıl" formatında gelen bir tarih stringini (örn: 08/12/2011) parçalarına ayırıp bir takım işlemlere tabi tutuyorduk.

Ancak burada parseInt("08")' ve parseInt("09")‘un 0 değerini döndürdüğünü farkettik. Kısa bir araştırma sonucu parseInt’in 8′lik tabanda çalıştığını öğrendik. Artık bu fonksiyonu kullanırken parseInt(deger,taban) şeklinde kullanıyor olacağım.


parseInt('01'); //eşittir 1
parseInt('02'); //eşittir 2
parseInt('03'); //eşittir 3
parseInt('04'); //eşittir 4
parseInt('05'); //eşittir 5
parseInt('06'); //eşittir 6
parseInt('07'); //eşittir 7
parseInt('08'); //eşittir 0
parseInt('09'); //eşittir 0

İlgili Html Elementinin Dışına Tıklanma Olayını Yakalama

Genellikle açılır menülerde sıkça rastlanılan bir senaryo diyebiliriz. Bir elemente tıklanır ya da fare ile üzerine gelinir ve daha sonra bunun kendisi dışında sayfada herhangi bir yere tıklanılması durumunda kapatılması istenir. Bu elbette birçok şekilde yapılabilir. Stackoverflow‘da rastladığım aşağıdaki yöntem bence gayet güzel bir çözüm olmuş. Siz de varsa eğer kendi çözümlerinizi paylaşabilirsiniz.


var isMouseInside = false;

$(function()
{
    $('.ilgiliElement').hover(function(){
        isMouseInside = true;
    }, function(){
        isMouseInside = false;
    });

    $("body").mouseup(function(){
        if(!isMouseInside)
          $('.ilgiliElement').hide();
    });
});
« Previous entries · Önceki Yazılarım