2008-08-30 34 views
5

Tôi đang cố gắng cập nhật một dự án từ ASP.NET MVC Preview 3 to Preview 5 và có vẻ như Controller.ReadFromRequest (chuỗi khóa) đã được gỡ bỏ khỏi lớp Controller. Có ai biết về bất kỳ lựa chọn thay thế để lấy thông tin dựa trên một định danh từ một hình thức?Thay thế Controller.ReadFromRequest trong ASP.NET MVC là gì?

Trả lời

3

Hình như họ đã thêm controller.UpdateModel để giải quyết vấn đề này, chữ ký là:

UpdateModel (mô hình đối tượng , string [] keys)

Tôi chưa nâng cấp ứng dụng của mình, vì vậy tôi không chắc chắn về mức sử dụng thực tế. Tôi sẽ được quan tâm để tìm hiểu về điều này bản thân mình, như tôi đang sử dụng controller.ReadFromRequest là tốt.

2

Không chắc nó đã đi đâu. Bạn có thể cuộn phần mở rộng của riêng bạn mặc dù:

MyBindingExtensions public class tĩnh {

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

bạn có thể làm lại liên kết đó trong một cái gì đó như tinyurl.com không?

Tôi cũng cần thông tin này nhưng có thể nhận được liên kết lớn đó để hoạt động.

Các vấn đề liên quan