﻿
{"id":2419,"date":"2014-01-14T14:10:12","date_gmt":"2014-01-14T14:10:12","guid":{"rendered":"http:\/\/www.gencayyildiz.com\/blog\/?p=2419"},"modified":"2014-01-14T14:11:38","modified_gmt":"2014-01-14T14:11:38","slug":"asp-net-validation-kullanirken-unobtrusivevalidationmode-hatasi","status":"publish","type":"post","link":"https:\/\/www.gencayyildiz.com\/blog\/asp-net-validation-kullanirken-unobtrusivevalidationmode-hatasi\/","title":{"rendered":"Asp.NET Validation Kullan\u0131rken UnobtrusiveValidationMode Hatas\u0131"},"content":{"rendered":"<div id=\"fb-root\"><\/div>\n<p>Bir y\u0131l\u0131 a\u015fk\u0131n Asp.NET MVC mimarisine yo\u011funla\u015ft\u0131\u011f\u0131mdan dolay\u0131 haliyle Asp.NET mimarisiyle baz\u0131 kopu\u015flar\u0131m\u0131z olmu\u015f.Teknik olarak ve Component kullan\u0131m\u0131nda bir ka\u00e7 ad\u0131m geride kalm\u0131\u015f oldu\u011fum bu mimarinin ba\u015f\u0131na oturdum ve eski bilgilerimi tazeleyip, \u00fcst\u00fcne yeni yap\u0131lar\u0131da ekleyeyim diyerek ba\u015flad\u0131m \u00f6rnek projeler yapmaya.Haliyle ad\u0131m ad\u0131m tazelenen bilgilerin e\u015fli\u011finde Validation kullanmaya gelince beynim Error verdi \ud83d\ude42 \u00c7\u00fcnk\u00fc <strong><em>UnobtrusiveValidationMode<\/em><\/strong> isimli bir hata ge\u00e7mi\u015fte an\u0131msad\u0131klar\u0131m aras\u0131nda yeri yoktu.Bende haliyle ya &#8220;<em>Asp.NET mimarisinde Validation&#8217;lar ileri safhada yeni tekniklerle kullan\u0131lmaya ba\u015flad\u0131<\/em>&#8221; ya da &#8220;<em>de\u011fi\u015fen bir \u015fey var i\u015fin yoksa otur \u00f6\u011fren<\/em>&#8221; gibisinden \u00f6n yarg\u0131larla panik yapmaya ba\u015flad\u0131m.Velhas\u0131l bir yenilik olmad\u0131\u011f\u0131n\u0131n fark\u0131na var\u0131p hatan\u0131n sebebini anlay\u0131nca Asp.NET mimarisi \u00fczerinde pek fazla ku\u015fku kalmad\u0131.\u015eimdi sizlere UnobtrusiveValidationMode hatas\u0131n\u0131n \u00e7\u00f6z\u00fcmlerinden bahsedece\u011fim.Evet \u00e7\u00f6z\u00fcmlerinden diyorum \u00e7\u00fcnk\u00fc sizlere sunaca\u011f\u0131m iki alternatif \u00e7\u00f6z\u00fcm var.<br \/>\n<!--more--><br \/>\n\u00d6ncelikle hatay\u0131 g\u00f6relim ard\u0131ndan hangi durumlarda bu hatay\u0131 ald\u0131\u011f\u0131m\u0131za daha detayl\u0131 de\u011finelim.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2014\/01\/UnobtrusiveValidationMode.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2014\/01\/UnobtrusiveValidationMode-300x40.png\" alt=\"UnobtrusiveValidationMode\" width=\"300\" height=\"40\" class=\"aligncenter size-medium wp-image-2421\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2014\/01\/UnobtrusiveValidationMode-300x40.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2014\/01\/UnobtrusiveValidationMode-1024x139.png 1024w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2014\/01\/UnobtrusiveValidationMode.png 1352w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><br \/>\nG\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi al\u0131nan hata bu.<br \/>\n<strong>Peki ne yap\u0131nca bu hatay\u0131 al\u0131yoruz?<\/strong><br \/>\nAsl\u0131nda bu makaleye giri\u015f esnas\u0131nda \u00e7\u00f6z\u00fcm\u00fcn\u00fc verece\u011fim hatan\u0131n Validation&#8217;lar dan oldu\u011funa de\u011finmi\u015ftik.Asp.NET mimarisinde herhangi bir Validation Componentini kullan\u0131rken bu hatay\u0131 alabilmeniz ihtimaller aras\u0131nda.<\/p>\n<p><strong>Hatadan nas\u0131l kurtulunur?<\/strong><br \/>\nAsp.NET projeniz i\u00e7indeki &#8220;web.config&#8221; dosyas\u0131n\u0131 a\u00e7\u0131n\u0131z.&#8221;<appSettings><\/appSettings>&#8221; Node&#8217;\u0131 aras\u0131na a\u015fa\u011f\u0131daki gibi anahtar kodu ekleyiniz.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n  &lt;appSettings&gt;\r\n    &lt;add key=&quot;ValidationSettings:UnobtrusiveValidationMode&quot; value=&quot;None&quot;\/&gt;\r\n  &lt;\/appSettings&gt;\r\n<\/pre>\n<p>Ger\u00e7ekle\u015ftirdi\u011finiz bu i\u015flemden sonra hata %99 ihtimalle kalkacakt\u0131r.Ola ki hata kalmad\u0131 di\u011fer alternatif \u00e7\u00f6z\u00fcme ba\u015fvurabilirsiniz.<\/p>\n<p>Alternatif \u00e7\u00f6z\u00fcme 2. sayfadan eri\u015febilirsiniz.<br \/>\n<!--nextpage--><br \/>\nAlternatif \u00e7\u00f6z\u00fcm\u00fc ger\u00e7ekle\u015ftirebilmek i\u00e7in projenize Global.asax dosyas\u0131n\u0131 eklemeniz gerekmektedir.A\u015fa\u011f\u0131da bir Asp.NET projesine eklenmi\u015f Global.asax dosyas\u0131n\u0131n saf i\u00e7eri\u011fi bulunmaktad\u0131r.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n    public class Global : System.Web.HttpApplication\r\n    {\r\n        protected void Application_Start(object sender, EventArgs e)\r\n        {\r\n\r\n        }\r\n        protected void Session_Start(object sender, EventArgs e)\r\n        {\r\n\r\n        }\r\n        protected void Application_BeginRequest(object sender, EventArgs e)\r\n        {\r\n\r\n        }\r\n        protected void Application_AuthenticateRequest(object sender, EventArgs e)\r\n        {\r\n\r\n        }\r\n        protected void Application_Error(object sender, EventArgs e)\r\n        {\r\n\r\n        }\r\n        protected void Session_End(object sender, EventArgs e)\r\n        {\r\n\r\n        }\r\n\r\n        protected void Application_End(object sender, EventArgs e)\r\n        {\r\n\r\n        }\r\n    }\r\n<\/pre>\n<p>Bu dosyan\u0131n i\u00e7inde g\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi &#8220;Application_Start&#8221; isimli bir metod bulunmaktad\u0131r.Bu metodun i\u00e7ine a\u015fa\u011f\u0131daki kodlar\u0131 yerle\u015ftirmemiz yeterli olacakt\u0131r.<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n        protected void Application_Start(object sender, EventArgs e)\r\n        {\r\n            ScriptManager.ScriptResourceMapping.AddDefinition(&quot;jquery&quot;, new ScriptResourceDefinition\r\n            {\r\n                Path = &quot;http:\/\/code.jquery.com\/jquery-1.10.2.min.js&quot;,\r\n                DebugPath = &quot;http:\/\/code.jquery.com\/jquery-1.10.2.min.js&quot;,\r\n                CdnPath = &quot;http:\/\/code.jquery.com\/jquery-1.10.2.min.js&quot;,\r\n                CdnDebugPath = &quot;http:\/\/code.jquery.com\/jquery-1.10.2.min.js&quot;\r\n            });\r\n        }\r\n<\/pre>\n<p><a href=\"http:\/\/code.jquery.com\/jquery-1.10.2.min.js\" target=\"_blank\">http:\/\/code.jquery.com\/jquery-1.10.2.min.js<\/a> linkinden JQuery dosyas\u0131n\u0131 indirip projenizde att\u0131\u011f\u0131n\u0131z dizinide g\u00f6sterebilirsiniz.Bu alternatif \u00e7\u00f6z\u00fcmde JQuery ile hataya \u00e7\u00f6z\u00fcm bulmu\u015f oluyoruz.<\/p>\n<p>\u0130yi \u00e7al\u0131\u015fmalar diliyorum&#8230;<\/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 y\u0131l\u0131 a\u015fk\u0131n Asp.NET MVC mimarisine yo\u011funla\u015ft\u0131\u011f\u0131mdan dolay\u0131 haliyle Asp.NET mimarisiyle baz\u0131 kopu\u015flar\u0131m\u0131z olmu\u015f.Teknik olarak ve Component kullan\u0131m\u0131nda bir ka\u00e7 ad\u0131m geride kalm\u0131\u015f oldu\u011fum bu mimarinin ba\u015f\u0131na oturdum ve eski bilgilerimi tazeleyip, \u00fcst\u00fcne yeni&#46;&#46;&#46;<!-- 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":[10,258],"tags":[549,745,286,748,547,179,548],"class_list":["post-2419","post","type-post","status-publish","format-standard","hentry","category-asp-net","category-hata-cozumleri","tag-application_start","tag-asp-net","tag-global-asax","tag-jquery","tag-unobtrusivevalidationmode","tag-validation","tag-web-config"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/2419","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=2419"}],"version-history":[{"count":0,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/2419\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media?parent=2419"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/categories?post=2419"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/tags?post=2419"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}