Osman KURT

Yazılım Uzmanı

MVC'de Mobile Sayfa Ayırımı

Merhabalar, Gelişen Asp.Net MVC'de bizler için bir güzellik daha var. Hepimiz web sayfaları geliştirirken yeni nesil responsive tasarımlar için var gücümüzle çalışıyoruz. Ancak bazı durumlarda bunu başarmak zorlaşabiliyor. İşte bu gibi durumlarda Mobile için özel tasarımlar hazırlamak gerekiyor. Bunu yaparken de gelen kullanıcıya göre yönlendirme yapmak lazım. Yönlendir kısmında işin en güzel tarafı ise şu; Home dizini altında ki Index.cshtml sayfası için mobil bir sayfa oluşturmamız gerekiyorsa bunu Index.Mobile.cshtml şeklinde oluşturduğumuzda işimizin tamamlanmış olması. Sizce de güzel değil mi? [Fazlası]

C# İpucu, string.join Kullanımı

Merhabalar, Kısa ama zaman kazandıracak bir kod string join. Var olan bir listemizi istediğimiz şekilde string bir veri olarak joinlemeye yani birleştirmeye yarayan bir kod. Alt kısımda bulunan basit örneği incelediğiniz de ne demek istediğimi gayet iyi anlayacaksınız. [Fazlası]

MVC'de BundleConfig Kullanımı Ve Performans Artışı

MVC projelerimizin default oluşumunda gelen bir özellik ve Microsoft gerçekten bu özelliği kullanmamızı istiyor.
Kullanımı basit, sayfa içerisinde o kadar çok css ve script tanımlıyoruz ki bazen biz bile ne nerden geliyor karıştırıyoruz. İşte bundle tam da bunu engellemek için yapışmış birşey. [Fazlası]

C# .Net de İpucu

Başlıktan da anlayacağınız üzere bir ipucu ile karşınızdayım.
Daha önceden method hazırlarken parametrelerde ref diye bir tanımlama kullandınız mı?

Kısaca açıklamak gerekirse, çalışacak method'dan önce bir değişken tanımladınız ve tanımladığınız değişkeninizin method çalıştıktan sonra dinamik olarak değerinin update edilmesini ve bu değişimin de method içinde işlendikten sonra gerçekleşmesini istiyorsunuz. Methodunuz da return değeri olarak bu parametre ile alakalı herhangi birşey döndürmüyor. O zaman ref diye bir tanımlamamız var. Alt kısımda ki kod örneği tam da bunu açıklıyor. [Fazlası]

MVC'de Captcha Kullanımı

Yakın bir tanıdığımın işine yaracağı için üzerinde çalıştığım bir örnek, basit ama hayat kurtarır. Günümüz teknolojisnin insan hayatında bazen bıkkınlık verir derecesine rahatsızlık verdiğinin farkındayız. Bunlarda yazılan otomatik sistemlerin payı büyük. Yazılım tekniklerinin gelişmesi ile susitimal oranlarıda arttık haliyle. Nasıl mı? Reklam amaçı yazılan botlar gibi.
İşte bunları engellemenin en önemli faktörlerinden bir tanesi Captcha kullanımı. Yani karşımızda kinin insan olduğunu anlamak. [Fazlası]

MVC Partial Sayfa Kullanımı

Asp.Net de alışık olduğumuz UserControl olayımızın MVC'deki karşılığıdır. Birden fazla yerde kullanılabilecek sayfaları Partial sayfa olarak oluşturup ilgili alana eklenmesi ile çalışan bir yapıdır.

Öncelikle Shared klasörümüze sağ tıklanır ve New Item denildikten sonra MVC sekmesinde ki Partial Page seçilir. Önümüze boş bir sayfa gelecek artık bu bizim kullanımımıza açık bir UserControl yeni adı ile Partial sayfamızdır.

Bunun içine html olarak gelmesini istediğimiz şeykeri yazarız. [Fazlası]

MVC Projelerde Login Kontrolü Yapma Authorize Kullanımı

Bir proje yaptık ve admin panelimiz var yada kullanıcı girişi olduğunu varsaydığımız herhangi bir yer. Bunu ya session yada cookie kullanarak sağlarız. İf koşulumu koyarız yolumuza devam ederiz. Şimdi şöyle bir durum var. MVC de sayfalar actionresult lardan oluşmakta hepsi için tek tek if mi yazacağız tabi ki hayır. Gerekli gördüğümüz yerde yazabiliriz tabiki ama bir admin paneli için bunu te tek yazmak yazılım hammallığından başka birşey değil tabiki.

Gelelim bu olayı tek bir kod bloğu ile nasıl yapacağımıza. MVC bize authorize diye bir nimet sunmuş ve bunu istediğimiz gibi editlememize olanak sağlamış.

İlk yapmamız gereken kendimize bir class tanımlamak ve bu classı MVC de AuthorizeAttribute sınıfından türetmek. olacak. Daha sonra bu classımızın içine bize bool değer döndüren bir overried bir method yazıyoruz ve if koşulumuzu burada sağlıyoruz. Duruma göre True yada False döndürerek işlemimizin gerçekleşmesini sağlayacağız ve controller'a kullanıcının erişim hakkının olup olmadığını sağlayacağız. [Fazlası]

MVC Projelerde Editör Kullanırken Alınan HTML Hatası

Mvc proje yazarken genellikle panellerimiz de editör kullanırız. Çünkü eklemek istediğimiz yazılarımıza istediğimiz html taglarını runtime da rahatlıkla vermemize olanak sağlarlar. Birçok örnek verebiliriz bu editörlere ben genellikle CKEditor kullanıyorum.

Gerekli script dosayalarımızı projemize eklediğimizi varsayıyorum ve sayfamızda editörümüzü gördük ve kaydet butonumuza bastık. Karşımıza bir hata çıktı hata içeriğinde html taglarının tehlikesinden bahsediyor. ASP.Net yazarken .aspx sayfalarımıza validatrequest=false diye kullandığımız kodumuz aklımıza geliyor ve bunu mvc deki karşılığını arıyoruz. Bu sefer bu kodumuzu yeni tabirle view sayfamıza değilde controller kısmında controller name alanımızın en başına yazıyoruz. [Fazlası]