我正在尝试从ASP.NET MVC预览版3更新项目到预览版5,似乎Controller.ReadFromRequest(字符串键)已从控制器类中删除。有谁知道基于表单中的标识符检索信息的替代方法吗?什么是ASP.NET MVC中Controller.ReadFromRequest的替代?
5
A
回答
3
看起来他们已经添加controller.UpdateModel来解决这个问题,签名是:
的UpdateModel(对象模型,string [] keys)
我没有亲自升级我的应用程序,所以我不确定实际使用情况。我有兴趣了解这一点,因为我使用的是controller.ReadFromRequest。
2
不知道它去了哪里。你可以尽管推出自己的分机:
公共静态类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;
}
}
0
你可以重做,像tinyurl.com的东西链接?
我也需要这个信息,但可以让那个超级链接工作。