Skip to content

Asp.Net.Mvc Temel

[.k3] edited this page Apr 9, 2019 · 14 revisions

Web Mantığı Nedir Nasıl Çalışır Yaşam Döngüsü (Life Cycle)

Web sitelerine ilk olarak girdiğinizde beyaz bir sayfa beklersiniz ve o beyaz sayfadan sonra yavaş yavaş tasarımlar gelemeye başlar, peki bu nasıl oluyor?

İlk olarak siteye bir Request (İstek) atıyorsunuz sonrasında sunucu (IIS) size Responce (yanıt) veriyor. Tasarımlar gelmeye başlıyor ve site kullanılabilir hale geliyor.

PostBack Nedir?

İstemci bir talepte bulunduğunda sayfa sunucuya postalanır ve belirtilen işlemler sunucuda yapıldıktan sonra sayfa tekrar kendisine yönlendirilirse bu işleme PostBack adı verilir.

Asp.Net Nedir?

Öncelikle ASP ’nin açılımı Active Server Page'dir. Açılımından da anlaşılacağı üzere, server taraflı bir web geliştirme teknolojisidir. Microsoft tarafından geliştirilmektedir. ASP.Net ile sadece Html tabanlı statik sayfalar değil, dinamik web sayfaları da oluşturabiliriz.

Asp.Net Hangi Platformlarda Çalışır?

Asp.Net Web Platformunda Çalışmaktadır. Aynı zamanda WebApi gibi yöntemi ile mobil cihazlara api yazılıp o platformda da json dosyaları Parse edilerek kullanılabilir.

Asp.Net Hangi Geliştirme Platformunda Geliştirilir?

Visual Studio 2010 ve üstü - Son Sürüm Olan 2017 Tavsiye Edilir.

Sürüm Olarak Visual Studio 'nun Sürümü Bulunmaktadır Community,Professional ve Enterprise

Community Ücretsiz olduğundan bunu kullanmanızı tavsiye ederim Professional ile çoğu işi yapmaktadır. Bir tek CodeLens özelliğini desteklememektedir.

Asp.Net Bir Programlama Dili midir Hangi Diller İle Çalışır?

Asp.net bir teknolojidir, bir programlama dili değildir ve C# veya Vb.Net ile (Backend'i) yazılır. Html Css Js ile (Tasarımkısmı )desteklenir.

Asp.Net.Mvc Nedir?

MVC, uygulama geliştirmede (özellikle web uygulaması geliştirmede) önemli yere sahip mimari desenlerden biridir. Günümüzde MVC denince akla Microsoft’un geliştirdiği ASP.NET MVC Framework gelmektedir, oysa 1979 yılından beri (Microsoft 1975 yılında kurulmuştur) yazılım dünyasında yer almaktadır.

Asp.Net'i Ne Ayaklandırır

Asp.Net'i IIS (Internet Information Services) ile ayaklandırıp debug ederiz ve IIS destekli hostinglerde canlıya alırız.

Nedir Bu Mvc?

Model: Veritabanına erişim, sınıflar (class),veritabanı ilişkileri gibi data ile ilgili işlemlerin yanı sıra, EntityFramework, Linq tol Sql, NHibernate, Ado.Net gibi frameworkleri içerisinde bulunduran katmandır. Kısacası data(veri) işlemleri bu katmanda gerçekleşir.

View: istemcinin gördüğü arayüzü içeren katmandır, genellikle Model katmanındaki verinin kullanılması ile oluşturulur. View katmanının Model ve Controller katmanlarından ayrılması ile arayüz değişikliklerinin uygulamanın diğer katmanlarını değiştirmeye gerek kalmadan yapılabilmesi sağlanmıştır. Html Js Ve Css ile güzel görüntüler ortaya çıkarılır

Controller: istemciden gelen isteği işlemek, Model ve View katmanları arasında köprü olmak gibi görevleri yerine getirir. Controller içerisinde bir veya daha fazla Action olabilir, genellikle her Action bir web sayfası üretmek için kullanılır.

MVC uzun yıllardır bir çok framework’te ve programlama dilinde kullanılmış (Java, PHP, vb.) ve olgunlaşmış bir desendir. ASP.NET MVC sayesinde .Net framework dilleri ile MVC pattern kullanılarak hızlı çalışan, test edilebilir, tekrar kullanılabilir parçaları olabilen web uygulamaları geliştirilebilmesi sağlanmıştır.

Asp.Net.Mvc Projesi Nasıl Oluşturulur?

File => New Project'e bastıktan sonra Visual C# Kısmından Asp.Net Web Application (.NetFramework) 'ı seçiyoruz Name kısmına ise belirlediğmiz proje adını Giriyoruz

Solution kısmına genel bir isimlendirme veriyoruz. Ve daha sonra OK'a basıyoruz.

Önümüze böyle bir pencere geliyor. Buradan üstteki kutucuklardan Empty seçeneğini seçip Add folders And core references for: kısmından ise MVC tikini işaretliyoruz.

Gördüğünüz gibi projemizi oluşturmuş olduk.

Gördüğünüz Gibi Model View Controller klasörü açıldı.

Yukarıda yazdığım gibi ilk başta Page oluşturmak için öncelikle bir Controller oluşturmamız gerekiyor. Bizim Controller klasörümüz gördüğünüz gibi boş controllere sağ tıklayarak

Controller Oluşturma: Controller Klasörü => Sağ Tık => Add => Controller

Mvc5 Controller-Empty'i Seçip Add'a basıyoruz.

DefaultController Olarak bir text alanı geldi bu sondaki Controller ismi hep olmalı genelde default olarak Hep HomeController Olarak tanımlanır Home tanımlamazsanız ilk açılış sayfasında sıkıntı yaşarsınız birazdan o konuya değineceğim.

Home Controllerimizi Eklemiş Olduk

Gördüğünüz gibi içerisinde Index Action'u var ve Constructor View döndürüyor. Şimdi Index Action'u geldi ama bir View'ı yok yani şuanda projeyi derler isek hiç bir şey açılmayacak ve çalışmayacak o yüzden bir adet View boluşturmamız gerekiyor.

Action'ın başlangıcına sağ tıklayarak Add View'a tıklıyoruz

Daha sonrasında açılan ekranda ViewName kısmı Action'un ismini alıyor. Kesinlikle ellemiyoruz!!!

Template kısmınıda Ellemiyoruz.

Sonrasında Use a Layout Page kısmı otomatik tıklı geliyor onuda ellemiyoruz şuanda.

Şuanlık bizim Action'a sağ tıklayıp Add View'a tıklayıp Add'a tıklamamız yeterlidir.

Gördüğünüz gibi html sayfa açıldı View'a gelmiş olduk ve burada C# kodu yazabiliriz şuanda şuanda bir derleyip sayfamızı görelim.

Üst kısımda IIS Express 'e tıklayıp bekliyoruz.

Gördüğünüz gibi açıldı ve hazır bir template var bunu projeyi oluştururken default olarak veriyor.

Üst kısımdaki Url'e bakarsanız Home/Index

Home Controllerin Index View'ı gördüğünüz gibi

Şimdi View içerisinde C# kodu ile şuanki saati görelim

@ ile başlayıp C# kodu yazabiliriz

{}(Scop)açıp arasına C# kodunu yazıyoruz ve html arasına @ koyup degişkeni adıyla çağırıyoruz gördüğünüz gibi çok basit ve kullanışlı.

Şimdi Neden İlk açtığımız Controllerımız Adı Home Ben başka Bir İsim İstiyorum Diyorsanız.

App_Start Klasörüne Geliyoruz. içerisine girerek çift tık ile RouteConfig'i açıyoruz.

İşaretlediğim kısma Controller: çift tırnaklı kısma "Controller Adı" Action: çift tırnaklı kısma "Action Adı" yazarsanız açılış sayfanız o belirlediğiniz sayfa olur.

Yazının Projesi

MvcGiris

Kaynakça:

https://webmaster.kitchen/nedir-bu-asp-net/

https://webmaster.kitchen/mvc-mimarisi-asp-net-mvc-nedir/

http://asp.sitesi.web.tr/asp-nedir.html

http://www.borakasmer.com/asp-net-mvc-nedir-ne-ise-yarar/

https://www.kodlamamerkezi.com/asp-net/asp-nette-postback-ispostback-ve-autopostback-kavramlari/