Ich versuche, ein Projekt von ASP.NET MVC Preview 3 auf Preview 5 zu aktualisieren, und es scheint, dass Controller.ReadFromRequest(string key) aus der Controller-Klasse entfernt wurde. Kennt jemand eine Alternative zum Abrufen von Informationen auf der Grundlage eines Bezeichners aus einem Formular?
Antworten
Zu viele Anzeigen?Sieht so aus, als ob sie controller.UpdateModel hinzugefügt haben, um dieses Problem zu beheben, Signatur ist:
UpdateModel(object model, string[] keys)
Ich habe meine App nicht persönlich aktualisiert, daher bin ich mir über die tatsächliche Nutzung nicht sicher. Ich werde selbst daran interessiert sein, dies herauszufinden, da ich mit controller.ReadFromRequest
auch.
Dane O'Connor
Punkte
71184
Ich bin mir nicht sicher, wo sie hin ist. Sie könnten aber Ihre eigene Erweiterung erstellen:
öffentliche statische Klasse MyBindingExtensions {
public static T ReadFromRequest < T > (this Controller controller, string key)
{
// Setup
HttpContextBase context = controller.ControllerContext.HttpContext;
object val = null;
T result = default(T);
// Gaurd
if (context == null)
return result; // no point checking request
// Bind value (check form then query string)
if (context.Request.Form[key] != null)
val = context.Request.Form[key];
if (val == null)
{
if (context.Request.QueryString[key] != null)
val = context.Request.QueryString[key];
}
// Cast value
if (val != null)
result = (t)val;
return result;
}
}
Iain Holder
Punkte
13981