2008-08-30 4 views
5

Я пытаюсь обновить проект от ASP.NET MVC Preview 3 до Preview 5, и кажется, что Controller.ReadFromRequest (строковый ключ) был удален из класса Controller. Кто-нибудь знает какие-либо альтернативы извлечения информации на основе идентификатора из формы?Что такое замена Controller.ReadFromRequest в ASP.NET MVC?

ответ

3

Похоже, они добавили controller.UpdateModel для решения этой проблемы, подпись:

UpdateModel (объектная модель , string [])

Я лично не обновил свое приложение, поэтому я не уверен в фактическом использовании. Мне будет интересно узнать об этом сам, поскольку я использую 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?

Мне тоже нужна эта информация, но я могу получить эту мега-ссылку для работы.

Смежные вопросы