Názory ke článku ASP.NET MVC v praxi od A do Z, 6. díl – CRUD
Když se snažim uložit nějaký záznam s chybou, tak mi v Site.Master část:
<% Html.RenderPartial("LogOnUserControl"); %>
hlásí chybu:
System.Web.HttpException: Ověření kódu MAC vlastnosti Viewstate se nezdařilo. Pokud je tato aplikace umístěna na webové serverové farmě nebo v clusteru, ověřte, že v konfiguraci <machineKey> je určena stejná hodnota validationKey a algoritmus ověřování. Hodnotu AutoGenerate nelze v clusteru použít.
když ten řádek odstraním, tak vypsání chybových hlášek proběhne v pořádku... :smile12:
Reagoval na komentář od uživatele mishpuleen :
Zkus do masterpage nahoru do direktivy Master přidat toto:
enableViewStateMac="False"
Tenhle problém už jsem někde viděl a nikdo vlastně nebyl schopný říct, čím to je - někomu se třeba tato chyba neobjeví na XP, ale jen na Vistách, někomu ji zase způsobuje kus kódu, atd. Možná je to způsobené nějakým nastavením IIS, ale to tady můžeme jen hádat a zkoušet.
Jestli problém přetrvá, tak sem zase napiš.
Začal jsem se tak trochu hrabat v ASP.NET MVC (zatím sem dělal WinForms, ale člověk se musí vyvíjet + s MVC dostanu pěkné HTML) a pro některé akce používám atribut Authorize. A tady mi přišlo na mysl, jak ta věc sakra ví, na jaký controller se má přesměrovat? V originále se to směřuje na Account/LogOn - to je nějaký defaultní nastavení, nebo co?
Reagoval na komentář od uživatele Jakub Lédl :Tohle funguje stejně jako v normálním ASP.NET při Forms autentizaci, nastavuje se to tedy přes web.config. Mrkni se tam, je to okolo 60. řádku.
Reagoval na komentář od uživatele Jakub Kottnauer :
Aha :) Děkuji mnohokrát.
Díky za odpověď, no mám Visty a s IIS jsem si trochu hrál, takže jsem tam třeba něco zkonil, nicméně enableViewStateMac="False" hlásí: Typ System.Web.Mvc.ViewMasterPage neobsahuje veřejnou vlastnost s názvem enableviewstatemac. Ono enableViewStateMac mi ani nenapovídá Intellisense...
27. 9. 2009
Ahoj, mám problém s validací prázdných hodnot, které nejsou typu string. U stringů přes String.IsNullOrEmpty vše proběhne v pořádku a vypíše se správná hláška, např. pro titulek mám "Titulek je povinný", ale pro hodnoty jiných datových typů, např. int, DateTime (kontrola na null) je u všech stejná hláška "A value is required.", ačkoliv mám nadefinované svoje hlášky, například pro datum "Datum je povinný"... Nevíte co s tím?