Qual è la sostituzione di Controller.ReadFromRequest in ASP.NET MVC?
-
09-06-2019 - |
Domanda
Sto tentando di aggiornare un progetto da ASP.NET MVC Preview 3 a Preview 5 e sembra che Controller.ReadFromRequest(string key) sia stato rimosso dalla classe Controller.Qualcuno conosce alternative al recupero delle informazioni in base a un identificatore da un modulo?
Soluzione
Sembra che abbiano aggiunto controller.UpdateModel per risolvere questo problema, la firma è:
UpdateModel(object model, string[] keys)
Non ho aggiornato personalmente la mia app, quindi non sono sicuro dell'utilizzo effettivo.Sarò interessato a scoprirlo io stesso, poiché sto usando controller.ReadFromRequest
anche.
Altri suggerimenti
Non sono sicuro di dove sia andato.Potresti comunque creare la tua estensione:
Classe statica pubblica 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;
}
}
potresti rifare quel collegamento in qualcosa come tinyurl.com?
Anch'io ho bisogno di queste informazioni, ma posso far funzionare il mega-link.