Qual é a substituição de Controller.ReadFromRequest no ASP.NET MVC?
-
09-06-2019 - |
Pergunta
Estou tentando atualizar um projeto do ASP.NET MVC Preview 3 para Preview 5 e parece que Controller.ReadFromRequest(string key) foi removido da classe Controller.Alguém conhece alguma alternativa para recuperar informações com base em um identificador de um formulário?
Solução
Parece que eles adicionaram controller.UpdateModel para resolver esse problema, a assinatura é:
UpdateModel(object model, string[] keys)
Não atualizei meu aplicativo pessoalmente, então não tenho certeza do uso real.Terei interesse em descobrir isso sozinho, pois estou usando controller.ReadFromRequest
também.
Outras dicas
Não tenho certeza para onde foi.Você poderia lançar sua própria extensão:
Classe estática pública 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;
}
}
você poderia refazer esse link em algo como tinyurl.com?
Também preciso dessa informação, mas posso fazer esse mega-link funcionar.