Respond needs javascript to run. To find out more click here
.net Developer » Sayfa 4 » Serdar Demir
RSS
 

Merhaba MVC 3

21 May

Asp.net ile birçok proje gerçekleştirdikten sonra sıra mvc ye geçmeye gelmişti :D

aslında bu kararı vermeden önce baya bir düşündüm çünkü microsoft bundan önceki mvc sürümlerinde desteğini bir süre bırakmıştı fakat mvc 3 ile tekrar geri döndü (java ya rakip olmak için yapmış olabilir :) ) MVC3 şu aralar web uygulaması geliştirme kısmında baya reklamı yapılan yeni bir teknoloji bizde olaya fransız kalmayıp öğrenelim dedik :) en iyi öğrenme yolu yazma oldugu için hep birlikte MVC ye ilk adımı atalım. New project deyip mvc 3 seçiyoruz ben view engine olarak razor seçiyorum sizede öneririm en popouler view engine dir.

Dilim döndüğünce Model-View-Controller yapısını anlatayım. Bu üç yapı birbiriyle sürekli iletişim halindedir. Controller gelen istekleri yorumlar ve yapılacak işleri yapan kısım view ise bu işlemlerin sonucu olan değişikliklerin görüntüleneceği  bir nevi asp sayfaları diyebiliriz. Modeli de uygulamada görelim :)

Projeyi oluşturduktan sonra bizim için bir template oluşturdu home-about logon ve register sayfaları olan biz ona blog diye bir model yapıp küçük bir uygulama yapacagız. Ama öncelikle MVC 3  e neden gerek var?  Benim gördüğüm em büyük etken ViewState yapısı çünkü bir  asp sayfasında viewstate hep problemdir. Textboxa birşey yazıp postaladıgınızda sayfa kaynagında o veri şifrelenerek aşağıdaki gibi taşınır.

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTUyMDk1NTY2MGRksAt8MlXyaviTvW0f3gR1U20EatjVbSLGWxo3d2ejU78=" />

Bu güvenlik içinde bir açık çünkü çok rahat bir şekilde view state çözen programlar bulabilirsiniz. Mvc ile bu ortadan kalkıyor neyse biz devam edelim

Solution a baktığımızda bizim için model controller ve view klasörlerini oluşturduğunu görüyoruz. Sisteme blog ekleyen listeleyen düzenleyen bir sayfa ekleyelim. Öncelikle blog sınıfını model klasöründe oluşturuyoruz.

public class Blog    {

[Required]
public string Title { get; set; }

[Range(1,20)]
public int Text { get; set; }
}

Title ve text olarak iki propertim var Range ve required ne peki ? Bunlarda çok hoş özellik bu etiketler formda validasyon yapmaya yarıyor. Required diyerek boş geçilemeyeceğini Range ile de uzunluğunu belirliyoruz. Controller folderına giderek BlogController adında controlu ekliyoruz.  Controller da veri çekmeyi göstermek için listeye blog ekleyip onları döndürüyoruz.

public ActionResult Index()
{
List<Blog> _blogs= new List<Blog>()
{
new Blog() { Title=”serdar”, Rating=4 },
new Blog() { Title=”merhaba mvc 3″, Rating=4},
new Blog() { Title=”opppps”, Rating=1}        };
var model = _blogs;
return View(model);
}

Şimdi sıra geldi view eklemeye Index mvc için özel bir kelime Add view diyerek view ekliyoruz aşağıda secili kısıma dikkat edelim oluşturdugumuz sınıfı seçiyoruz. İsterseniz sonrada ekleyebilirsiniz.

 

İşlem bu kadar projeyi çalıştırdıgınızda aşağıdaki gibi create edit delete ve liste halinde blog listesi geliyor. Bunu asp ile yapsaydık bu veriler view state de saklanacaktı sayfa kaynagına baktıgınızda çok temiz bir kod oldugunu göreceksiniz. MVC ye sadece ilk adımı attık daha anlatacak çok sey var tabiki dynamic tipi ve razor dan bahsedeceğim bir sonraki yazıda görüşmek üzere

 

 
No Comments

Posted in MVC 3

 

Safari SSL sertifika hatası

19 May

Asp.net ile yaptıgınız bir sitede ssl kullanıyorsanız safari biraz problem çıkaratabiliyor. Mesela siteye girerken ssl sertifikası seçin yukleyin gibi bu problemin çözümü oldukça basit iis den siteyi seçip yoksay veya ignore diyoruz.

 
No Comments

Posted in Asp.net

 

Visual Studio Tips

19 May

Bir yazılım en sadık dostu Ide ler hele ki visual studio gibi bir ortam da proje geliştiriyorsanız içiniz çok zevkli bir hale geliyor. Microsoft hep kötü projelerle anılırken bkz(linq to sql, vista..) bence en iyi yaptığı iş visual studio şu aralar hem 2008 hemde 2010 kullanıyorum ama açıkcası 2010 un performasından pek memnun değilim. Neyse elimizdeki nimeti kullanmayı aslında çoğumuz bilmiyoruz mesala Immediate Window, Object Browser, Manage Styles, breakpoints vs. açık bu araçlar benim hayatımı kurtarıyor ve favori debug araçlarım bugun Immediate window dan bahsedelim bunu çoğu developer bilmiyor bildiginiz gibi debug yaparken kod kısmı readonly olur ve değiştirmezsiniz  immediate window size debug yaparken aşağıdaki resimde oldugu gibi normal kod yazar gibi verilerin içerigini okuma vs sağlıyor bu işlemi watch ile de yapabilirsiniz, ayrica intellisense desteği sizi büyük bir zahmetten kurtarıyor. Yeri gelmişken Resimde menude görünen run to cursor den de bahsedelim oda farenin oldugu yere bir break point atıyor otomatik ve o noktaya kadar çalıştırıyor.

 
No Comments

Posted in Asp.net, C#

 
Sayfa 4 - 23012345678910...100200...Son »