reklam

Asp.Net Mvc Controller ve View kullanımı

coder
|
17.06.2018
|
81 okunma
|
0 Yorum

Bu makalede Asp.Net Mvc teknolojisinde bulunan Controller ve View yapılarının kullanımını anlatacağım. Bir önceki makalemizde Asp.Net Mvc - RouteConfig Dosyası Nedir adlı makalemizi yayınlamıştık. İstifade etmenizde fayda olacaktır.

 

Sizinde bildiğiniz gibi MVC'nin açılımı Model View Controller'dır. Model yapısı biraz daha karışık olduğu için onu daha sonraki makalelerde anlatacağım. Controller ve View yapılarının ne olduğunu bilmiyorsanız Asp.Net MVC Teknolojisini Tanıyalım adlı makalemize göz atabilirsiniz.

 

Şimdi boş bir  mvc projesi açalım. Projenin sağ tarafında bulunan Controllers klasörüne sağ tıklayarak Add > Controller yolunu izleyin. Karşınıza aşağıdaki gibi bir pencere gelecektir.

 

controller oluşturma

 

Karşımıza 8 tane seçenek çıktı. Lakin biz şuan da WebApı'ler bizi ilgilendirmediği için ilk 3 seçenekten bahsetmek yeterli olacaktır.

 

MVC 5 Controller - Empty : Bu seçeniği seçersek Controller içi boş olarak gelecektir. İçinde sadece Index metodu bulunur. 

 

MVC 5 Controller - with read/write actions : Bu seçeneği seçersek veritabına ekleme, silme, listeleme yapabilmek için gerekli actionlar(metodlar) otomatik olarak oluşturulur.

 

MVC 5 Controller - with views, using Entity Fromework : Bu seçeneği seçersek veri tabanımızda ki veriler kullanılarak actionlar(metodlar) otomatik olarak doldurulur. 

 

Biz bu dersimizde ilk seçeneği seçerek devam edelim. Tamam dedikten sonra Controller'a bir isim verip tamam diyelim. Ben Anasayfa ismini verdim.

 


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace controller_ve_view_kullanımı.Controllers
{
    public class AnasayfaController : Controller
    {
        // GET: Anasayfa
        public ActionResult Index()
        {
            return View();
        }
        public ActionResult Hakkimizda()
        {
            return View();
        }
        public ActionResult iletisim()
        {
            return View();
        }
    }
}

 

 

Anasayfa adındaki Controller'imiz yukarıdaki gibi oluşturuldu. Buraya kadar kolaydı. Kullanıcıların görebileceği 3 tane sayfa yapacağız. Bu sayfalar; Anasayfa, Hakkımızda , İletişim olacak. Şimdi işin en can alıcı noktası burası. Eğer burayı anlarsanız işiniz kolay olacaktır. Yapacağımız Web sitenin çalışması için en az 1 tane Controller ve 1 tanede View'a ihtiyacımız var. Bakın Controller'in oluşturduğumda içinde sadece bir tane metod var adı oda Index metodu idi. Her bir metoda ait bir tane View oluşturup kullanıcı kısmında görüntüleme yapacağız.

Index() yazısına sağ tıklayıp Add  View diyelim. 

 

 

View Ekle

 

Ayarları olduğu gibi bırakıp Add diyerek View ekleme işlemini tamamlıyoruz. 

 



@{
    Layout = null;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
    <div> 
        Burası Anasayfa
        <ul>
            <li>@Html.ActionLink("Ana Menü", "Index", "Anasayfa")</li>
            <li>@Html.ActionLink("Hakkımızda", "Hakkimizda", "Anasayfa")           </li>
            <li>@Html.ActionLink("İletişim", "iletisim", "Anasayfa") </li>
        </ul>
    </div>
</body>
</html>

 

Index metoduna ait View yukarıdaki gibi oluştu.

 



<ul>
            <li>@Html.ActionLink("Ana Menü", "Index", "Anasayfa")</li>
            <li>@Html.ActionLink("Hakkımızda", "Hakkimizda", "Anasayfa") </li>
            <li>@Html.ActionLink("İletişim", "iletisim", "Anasayfa") </li>
        </ul>


 

Yukarıdaki kodları ise kendim sonradan yazdım otomatik gelmedi yani. Şimdi ise bu menünün ne olduğundan bahsedelim. Asp.Net 'de bildiğiniz link menüsünün aynısı.

Html.ActionLink 3 tane parametre alır :

 

1. parametre örneğin Ana Menü; Linkte görünecek olan yazıdır.

2. parametre örneğin Index; Action yani metodun ismidir.

3. parametre örneğin Anasayfa bu ise bizim Controller'in ismidir.

Link menüsünü bu şekilde oluşturdum.

 

Aynı işlemleri diğer metotlar içinde yapıp her bir metodun üstüne gelip sağ tıklayıp  o metoda ait yeni bir view eklememiz gerekiyor.

 

Projeyi çalıştırmadan önce belirtmekte fayda var. RouteConfig dosyasında varsayılan olarak Home adında controller çağırılır. Bizim Home adında bir Controllerimiz olmadığı için RouteConfig dosyasını açıp controller="Home" yazan yere kendi controller isminizi yazmanız gerekiyor. 

 

Bu şekilde projeyi çalıştırıp sonuçları görebilirsiniz. İlerleyen derslerimizde daha büyük uygulamalar yapıp bu işi daha da çok pekiştireceğiz.

Tüm Hakları Saklıdır. © 2018 Geliştirici Mehmet Tanrıverdi & Tasarım Oktay Karakaya