Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 19676|Odgovoriti: 2

[Napitnine] MVC metamodel metadata ViewData.ModelMetadata

[Kopiraj povezavo]
Objavljeno na 28. 06. 2017 21:12:49 | | | |

ModelMetaData je pomemben koncept v MVC, vključno, a ne omejeno na vrsto modela, katere atribute model vsebuje, katere vrste atributov so prisotne in katere značilnosti so na atributih.

ASP.NET MVC3.0 zagotavlja privzete metapodatke modela, DataAnnotationsModelMetadata podeduje iz ModelMetadata (poleg tega sistem zagotavlja ponudnika metapodatkov privzetega modela DataAnnotationsModelMetadataProvider)

javni razred DataAnnotationsModelMetadata : ModelMetadata

Njegov konstruktor je naslednji

public DataAnnotationsModelMetadata(DataAnnotationsModelMetadataProvider provider, Type containerType, Func modelAccessor, Type modelType, string propertyName, DisplayColumnAttribute displayColumnAttribute);


Razred DataAnnotationsModelMetadata ima več pogosto uporabljenih lastnosti

DisplayName prikaza, DisplayFormatString format string

TemplateHint dobi vrednost za izbiro predloge


Za DisplayName metoda LabelFor<TModel, TValue> uporablja to lastnost za generiranje besedila oznake.  PomeniKo je lastnost DispalyName definirana na našem modelu, uporabite metodo html.editForModel() v prikazuSamodejno bo prikazal oznako "<oznaka za="uporabniško ime" > ime </ za ta atribut</label> modela.

  

[display( name="name",order=2)] //attribute order spremeni vrstni red html strani
  Uporabniško ime javnega niza { get; set; }




HTML izvorna koda:




Lastnost Display, ki se uporablja v atributu uporabniškega imena, je razred System.ComponentModel.DataAnnotations.DisplayAtribut, ki zagotavlja generično funkcijo, ki omogoča določitev lokalizabilnih nizov za tip in člana razreda entity division


Obstajajo tudi funkcije iz System.Web.MVC in System.ComponentModel.DataAnnotations, katerih imena so vsi razredi značilnosti, podobni XXXXAttribute, vsi imajo specifične obsege uporabe, nekateri omejujejo lastnosti modela, nekateri omejujejo Contrller, nekateri Actions itd.


Spodaj je seznam vgrajenih in pogosto uporabljenih razredov značilnosti v teh dveh imenskih prostorih

1) Prostor System.Web.MVC

SprejmiVerbsAttribute,ActionFilterAttribute,ActionNameAttribute,AsyncTimeoutAttribute,AuthorizeAttribute,BindAttribute,

HiddenInputAttribute

ActionFilterAttribute predstavlja osnovni razred vseh lastnosti akcijskega filtra

HttpDeleteAttribute razred, ki predstavlja lastnost, ki omejuje operativno metodo, tako da metoda obravnava le HTTP DELETE zahteve

HttpGetAttribute, atribut HttpPostAtribut, ki omejuje operativno metodo na obdelavo samo PUT zahtevkov

HttpPutAttribute predstavlja lastnost, ki omejuje operativno metodo, tako da metoda obravnava le HTTP PUT zahteve.


Primer: ActionNameAttribute določa dejansko ime dejanja, uporaba pa je naslednja

[ActionName()]

javni ActionResult Index()


Primer: Razred HiddenInputAttribute (HiddenInputAtribut), ki predstavlja lastnost, ki označuje, ali naj se vrednost lastnosti ali polje prikaže kot skriti vhodni element




Prejšnji:[A] MySql.Data.MySqlClient.MySqlConnection ni mogoče oddajati na [B]MySql.Data.MySqlC...
Naslednji:Neujeta tipna napaka: Ni mogoče nastaviti lastnosti 'nemotečna' ali nedoločenega
 Najemodajalec| Objavljeno na 28. 06. 2017 21:14:05 |
ModelMetadata



 Najemodajalec| Objavljeno na 1. 12. 2017 16:53:12 |


ViewData za pridobitev kodeksa nepremičnine:

ViewDataDictionary viewData2=novi ViewDataDictionary(ViewData["Test"]);
viewData2.ModelMetadata.Properties;
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com