2016-06-15 12 views
-1

Also habe ich nur eine Klasse zu meinem Projekt hinzugefügt und tat dies:Intellisense zeigt nicht IsValid für Model

enter image description here

Warum gibt es keine ModelState.IsValid ist? Fehle ich eine Referenz oder verweise ich auf eine falsche Klasse?

+2

'ModelState' ist eine Eigenschaft der' Controller' Klasse –

+0

@StephenMuecke also sollte meine Klasse von Controller erben? – Travolta

+0

Nein. "ModelState" ist nur in Bezug auf die aktuelle Anfrage anwendbar. Was willst du machen? –

Antwort

0

ModeleState ist die einzige Eigenschaft der Klasse-Controller und Sie können es nicht außerhalb Controller-Klasse einfach wie diese

if (ModelState.IsValid) 
    { 
      return false; 
    } 
0

ModelState ist eine Klasse ohne System.Web.Mvc Referenz Gebrauch. Die Eigenschaft IsValid ist nur für eine Instanz und nicht im statischen Kontext verfügbar.

Am liebsten denken Sie an die Eigenschaft ModelState in einem Controller, der eine Instanz enthält.

Wenn Sie es außerhalb eines Controllers verwenden müssen, werfen Sie einen Blick here

var context = new ValidationContext(model, null, null); 
if (!Validator.TryValidateObject(model, context, results)) 
{ 
    // results will contain all the failed validation errors. 
} 
0

Model ist perporty der Controller-Klasse Sie Base-Controller erben müssen. wenn dein intellisense nicht angezeigt wird. Visual Studio zurücksetzen. Es gibt Fehler in Visual Studio 2013 Update 3.

Verwandte Themen