xVal und ASP.Net MVC 2 AddModelStateErrors Problem
-
29-09-2019 - |
Frage
ich eine Anwendung, die ich habe mit xVal erfolgreich seit geraumer Zeit. Es wurde vor kurzem aktualisiert MVC 2.
Ich verwende die Standard-DataAnnotations Attribute auf meiner Domain-Modelle, die auch eine „Validate ()“ Methode implementieren, die die DataAnnotationsValidationRunner aufruft. Wenn es irgendwelche Fehler gibt, führt das Verfahren einen RulesException.
In meinem Controller, verwende ich den sehr typischen Fang für RulesException
catch (RulesException e)
{
e.AddModelStateErrors(ModelState, "err");
}
Alle typischen Sachen, fast direkt aus den Beispielen und funktioniert gut, bis vor kurzem (ich vermute, die zum Zeitpunkt meiner MVC1 begann Probleme. -> MVC2 update
Also das Problem ist folgendes: Wenn die AddModelStateErrors Methode aufgerufen wird, erhalte ich eine „System.EntryPointNotFoundException: Einstiegspunkt wurde nicht gefunden“, die von System.Collections.Generic.ICollection1.get_Count() at System.Web.Mvc.Html.ValidationExtensions.ValidationMessageHelper(HtmlHelper htmlHelper, ModelMetadata modelMetadata, String expression, String validationMessage, IDictionary
2 Htmlattributes kommt) bei System.Web .Mvc.Html.ValidationExtensions.ValidationMessage (Htmlhelper Htmlhelper, String Modellname, String Validation, IDictionary`2 Htmlattributes) bei ASP.views_user_edit_aspx .__ RenderContent2 ... {snipped, wie es Standard ist von dort aus}
Ich habe beide schaute auf den Code für xVal Methode und der Htmlhelper-Erweiterung, und ich kann nicht scheinen, um herauszufinden, was los ist.
Irgendwelche Ideen?
Lösung
hat das gleiche Problem, aber nur gelöst es: fügen Sie die folgende zu web.config oder app.config, zu MVC2 bewegen:
<runtime>
<assemblyBinding
xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
oder MVC3:
<runtime>
<assemblyBinding
xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>