﻿
{"id":1050,"date":"2012-11-28T15:04:30","date_gmt":"2012-11-28T15:04:30","guid":{"rendered":"http:\/\/www.gencayyildiz.com\/blog\/?p=1050"},"modified":"2019-02-08T21:21:59","modified_gmt":"2019-02-08T21:21:59","slug":"mvcde-details-metodu","status":"publish","type":"post","link":"https:\/\/www.gencayyildiz.com\/blog\/mvcde-details-metodu\/","title":{"rendered":"MVC&#8217;de Details Metodu"},"content":{"rendered":"<div id=\"fb-root\"><\/div>\n<p>Bir \u00f6nceki, MVC\u2019de Details,Create,Edit,Delete Metodlar\u0131 ba\u015fl\u0131kl\u0131 yaz\u0131m\u0131zda listeleme(tablolama) yap\u0131lmas\u0131n\u0131 g\u00f6rm\u00fc\u015ft\u00fck.\u015eimdi ise, yapt\u0131\u011f\u0131m\u0131z bu tablodaki her bir \u00f6\u011frencinin detaylar\u0131na nas\u0131l eri\u015fti\u011fimizi inceleyece\u011fiz.<br \/>\n<!--more--> <span style=\"font-size: x-small;\"><em><strong>Dikkat !!!<\/strong><\/em><\/span><br \/>\n<span style=\"font-size: xx-small;\"><strong><em>Bu yaz\u0131m\u0131z\u0131 anlaman\u0131z i\u00e7in bir \u00f6nceki yaz\u0131m\u0131z\u0131 detayl\u0131 bir bi\u00e7imde okuman\u0131z gerekmektedir.Yaz\u0131 dizisi olu\u015fturdu\u011fumdan dolay\u0131, bir yaz\u0131 \u00f6nceki ve sonrakiyle ba\u011flant\u0131l\u0131 \u015fekilde \u00f6rneklendirilmi\u015ftir.<\/em><\/strong><\/span><\/p>\n<p>Yaz\u0131 dizinimize s\u0131ras\u0131yla devam eden okuyucular\u0131m, an\u0131msarsan\u0131z e\u011fer bir \u00f6nceki yaz\u0131m\u0131zda &#8220;Ogrenci(Controller)&#8221; ad\u0131nda bir Controller s\u0131n\u0131f\u0131 tan\u0131mlam\u0131\u015ft\u0131k ve Index metodu arac\u0131l\u0131\u011f\u0131yla elimizle olu\u015fturdu\u011fumuz Ogrenci tipinden nesneleri listeletmi\u015ftik.Veritaban\u0131 kullanmad\u0131\u011f\u0131m\u0131zdan dolay\u0131 List koleksiyonu kullanarak, Session nesnesi taraf\u0131ndan bu koleksiyonumuzu ta\u015f\u0131t\u0131p gerekli \u00f6rneklendirmeleri bu \u015fekilde yapm\u0131\u015ft\u0131k.<\/p>\n<p>Bu ve bundan sonraki b\u00fct\u00fcn yaz\u0131lar\u0131mda da ayn\u0131 mant\u0131kta bir veri transveri kullanaca\u011f\u0131m i\u00e7in bu konunun kafan\u0131z\u0131 kar\u0131\u015ft\u0131rmamas\u0131na dikkat ediniz.<\/p>\n<p>\u015eimdi as\u0131l mevzumuza gelelim.&#8221;Ogrenci(Controller)&#8221; ad\u0131ndaki Controller s\u0131n\u0131f\u0131m\u0131z\u0131 a\u00e7arsak e\u011fer, i\u00e7indeki ActionResult tipinden Details ad\u0131ndaki metodumuz sayesinde, listelenmi\u015f \u00f6\u011frencilerimizden herhangi birinin bilgisine ula\u015fabilece\u011fiz.\u00d6ncelikle bu metodumuzu bir inceleyelim.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n        public ActionResult Details(int id)\r\n        {\r\n            return View();\r\n        }\r\n<\/pre>\n<p>G\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi int tipinden &#8220;id&#8221; ad\u0131nda bir parametre almaktad\u0131r.<span style=\"font-size: x-small;\">(Bu parametre isminin id olmas\u0131n\u0131n sebebinin, Global.asax dosyas\u0131ndan kaynaklanmas\u0131n\u0131 daha \u00f6nceki yaz\u0131lar\u0131mda detayl\u0131 bir \u015fekilde bahsetmi\u015ftim.)<\/span>Herhangi bir \u00f6\u011frencinin ID de\u011ferini bu metoda g\u00f6nderece\u011fiz.Bu &#8220;id&#8221; parametreside bu de\u011feri yakalay\u0131p, o &#8220;ID&#8221; deki \u00f6\u011frenin b\u00fct\u00fcn bilgilerini bizlere getirtecektir.<\/p>\n<p>\u00d6ncelikle \u00f6\u011frencilerimizin listelenmi\u015f \u015fekline ve herhangi bir \u00f6\u011frencinin Details linkine bir g\u00f6z atal\u0131m.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/list.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1046\" title=\"list\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/list.png\" alt=\"\" width=\"510\" height=\"192\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/list.png 510w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/list-300x112.png 300w\" sizes=\"auto, (max-width: 510px) 100vw, 510px\" \/><\/a><br \/>\nYukar\u0131daki listemizde \u00f6rnek olarak ad\u0131 Gen\u00e7ay olan \u00f6\u011frencimizin Details linkine geldi\u011fimizde, taray\u0131c\u0131n\u0131n sol alt k\u00f6\u015fede \u00e7\u0131kan linkinide inceleyelim.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/link.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1053\" title=\"link\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/link.png\" alt=\"\" width=\"179\" height=\"16\" \/><\/a><br \/>\nG\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi, Ogrenci ad\u0131ndaki Controller&#8217;\u0131m\u0131z\u0131n i\u00e7indeki Details Action&#8217;\u0131na gidiyor ve parametre olarak 1 de\u011ferini atamaktad\u0131r.<\/p>\n<p>\u015eimdi herhangi bir \u00f6\u011frencinin Details linkine t\u0131kland\u0131\u011f\u0131 zaman detaylar\u0131n\u0131n nas\u0131l getirilece\u011fini inceleyelim.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n        public ActionResult Details(int id)\r\n        {\r\n            List&lt;Ogrenci&gt; Ogrencilerimiz = Session&#x5B;&quot;Ogrenciler&quot;] as List&lt;Ogrenci&gt;;\r\n            Ogrenci OgrenciDetay = Ogrencilerimiz.Where(o =&gt; o.ID == id).FirstOrDefault();\r\n            return View(OgrenciDetay);\r\n        }\r\n<\/pre>\n<p>Yukar\u0131daki kodlar\u0131 incelersek e\u011fer, Session nesnemizdeki Ogrenci tipindeki List koleksiyonumuzu, Ogrencilerimiz ad\u0131ndaki bir koleksiyon referans\u0131na at\u0131yoruz.Extension metod olan Where metoduyla, Ogrencilerimiz koleksiyonunda ID de\u011feri, id de\u011fi\u015fkenine e\u015fit olan \u00f6\u011frenciyi \u00e7ekip, View katman\u0131na g\u00f6nderiyoruz.<\/p>\n<p>Mant\u0131ksal olarak t\u0131klanan \u00f6\u011frencimizin detaylar\u0131na ula\u015ft\u0131k ve View katman\u0131na bu detaylar\u0131 g\u00f6nderdik.<br \/>\n\u015eimdi s\u0131ra, bu detaylar\u0131 g\u00f6stermekte.<br \/>\nDetails metodumuza sa\u011f t\u0131klayarak, Add View diyoruz.A\u015fa\u011f\u0131daki gibi ayarlamalar\u0131 yap\u0131p, Add butonuna\u00a0t\u0131kl\u0131yoruz.<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/Detay.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1054\" title=\"Detay\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/Detay.png\" alt=\"\" width=\"439\" height=\"432\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/Detay.png 439w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/Detay-300x295.png 300w\" sizes=\"auto, (max-width: 439px) 100vw, 439px\" \/><\/a><br \/>\nBurada \u00f6nemli husus, detay i\u015flemi yapt\u0131raca\u011f\u0131m\u0131zdan dolay\u0131 View content b\u00f6l\u00fcm\u00fcnden &#8220;Details&#8221; se\u00e7ene\u011fi se\u00e7ilmelidir.<\/p>\n<p>Kar\u015f\u0131m\u0131za gelen, Details.aspx sayfas\u0131n\u0131n kaynak kodlar\u0131 a\u015fa\u011f\u0131daki gibi olacakt\u0131r.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n&lt;%@ Page Title=&quot;&quot; Language=&quot;C#&quot; MasterPageFile=&quot;~\/Views\/Shared\/Site.Master&quot; Inherits=&quot;System.Web.Mvc.ViewPage&lt;Calisma.Models.Ogrenci&gt;&quot; %&gt;\r\n&lt;asp:Content ID=&quot;Content1&quot; ContentPlaceHolderID=&quot;TitleContent&quot; runat=&quot;server&quot;&gt;\r\n\tDetails\r\n&lt;\/asp:Content&gt;\r\n&lt;asp:Content ID=&quot;Content2&quot; ContentPlaceHolderID=&quot;MainContent&quot; runat=&quot;server&quot;&gt;\r\n    &lt;h2&gt;Details&lt;\/h2&gt;\r\n    &lt;fieldset&gt;\r\n        &lt;legend&gt;Fields&lt;\/legend&gt;\r\n        &lt;div class=&quot;display-label&quot;&gt;ID&lt;\/div&gt;\r\n        &lt;div class=&quot;display-field&quot;&gt;&lt;%: Model.ID %&gt;&lt;\/div&gt;\r\n        &lt;div class=&quot;display-label&quot;&gt;Adi&lt;\/div&gt;\r\n        &lt;div class=&quot;display-field&quot;&gt;&lt;%: Model.Adi %&gt;&lt;\/div&gt;\r\n        &lt;div class=&quot;display-label&quot;&gt;SoyAdi&lt;\/div&gt;\r\n        &lt;div class=&quot;display-field&quot;&gt;&lt;%: Model.SoyAdi %&gt;&lt;\/div&gt;\r\n        &lt;div class=&quot;display-label&quot;&gt;Yasi&lt;\/div&gt;\r\n        &lt;div class=&quot;display-field&quot;&gt;&lt;%: Model.Yasi %&gt;&lt;\/div&gt;\r\n        &lt;div class=&quot;display-label&quot;&gt;Sinifi&lt;\/div&gt;\r\n        &lt;div class=&quot;display-field&quot;&gt;&lt;%: Model.Sinifi %&gt;&lt;\/div&gt;\r\n        &lt;div class=&quot;display-label&quot;&gt;SinifHocasi&lt;\/div&gt;\r\n        &lt;div class=&quot;display-field&quot;&gt;&lt;%: Model.SinifHocasi %&gt;&lt;\/div&gt;\r\n    &lt;\/fieldset&gt;\r\n    &lt;p&gt;\r\n        &lt;%: Html.ActionLink(&quot;Edit&quot;, &quot;Edit&quot;, new { \/* id=Model.PrimaryKey *\/ }) %&gt; |\r\n        &lt;%: Html.ActionLink(&quot;Back to List&quot;, &quot;Index&quot;) %&gt;\r\n    &lt;\/p&gt;\r\n&lt;\/asp:Content&gt;\r\n<\/pre>\n<p>Son olarak projemizi \u00e7al\u0131\u015ft\u0131r\u0131p, adres \u00e7ubu\u011funa &#8220;http:\/\/localhost:***\/Ogrenci&#8221; gibisinden link girersek e\u011fer, &#8220;Ogrenci(Controller)&#8221; Controller&#8217;\u0131m\u0131zdaki &#8220;Index&#8221; isimli metodumuzu \u00e7al\u0131\u015ft\u0131racakt\u0131r.<span style=\"font-size: x-small;\"><em>(Varsay\u0131lan olarak Index \u00e7al\u0131\u015ft\u0131\u011f\u0131 i\u00e7in \/Index yazmasakta olur.)<\/em><\/span><br \/>\nGelen tablodan herhangi bir \u00f6\u011frencinin Details linkine t\u0131klayal\u0131m.Kar\u015f\u0131m\u0131za gelen ekran a\u015fa\u011f\u0131daki gibi olmal\u0131d\u0131r.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/Detay1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1055\" title=\"Detay\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2012\/11\/Detay1.png\" alt=\"\" width=\"131\" height=\"336\" \/><\/a><br \/>\nMVC&#8217;de \u015fablon olarak bir detay(Details) i\u015fleminin nas\u0131l yap\u0131ld\u0131\u011f\u0131n\u0131 incelemi\u015f olduk.Umar\u0131m faydal\u0131 bilgiler sunmu\u015fumdur sizlere.Bu yaz\u0131m\u0131nda sonuna gelmi\u015f bulunmaktay\u0131z.Bir sonraki yaz\u0131mda &#8220;Create&#8221; metodunu g\u00f6rece\u011fiz.<br \/>\nG\u00f6r\u00fc\u015fmek dile\u011fiyle,<br \/>\n\u0130yi \u00e7al\u0131\u015fmalar.<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Bir \u00f6nceki, MVC\u2019de Details,Create,Edit,Delete Metodlar\u0131 ba\u015fl\u0131kl\u0131 yaz\u0131m\u0131zda listeleme(tablolama) yap\u0131lmas\u0131n\u0131 g\u00f6rm\u00fc\u015ft\u00fck.\u015eimdi ise, yapt\u0131\u011f\u0131m\u0131z bu tablodaki her bir \u00f6\u011frencinin detaylar\u0131na nas\u0131l eri\u015fti\u011fimizi inceleyece\u011fiz.<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[746,292,283],"class_list":["post-1050","post","type-post","status-publish","format-standard","hentry","category-asp-net-mvc","tag-asp-net-mvc","tag-details","tag-mvc"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/1050","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/comments?post=1050"}],"version-history":[{"count":1,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/1050\/revisions"}],"predecessor-version":[{"id":10376,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/1050\/revisions\/10376"}],"wp:attachment":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media?parent=1050"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/categories?post=1050"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/tags?post=1050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}