2009-07-13 27 views
5

Tôi muốn sử dụng mô hình ràng buộc để giữ các bộ điều khiển của tôi nhìn sạch hơn, bạn có thể xem như thế nào đẹp hơn nhiều đó là sử dụng mô hình ràng buộc:Làm thế nào để làm mẫu Ràng buộc với Jquery Ajax

public ActionResult Create(Person personToCreate) 
{ 
    //Create person here 
} 

vs

public ActionResult Create(string firstName, string lastName, string address, string phoneNum, string email, string postalCode, string city, string province, string country) 
{ 
    //Create person here 
} 

Khi thực hiện mô hình ràng buộc, chúng tôi chỉ có thể sử dụng biểu mẫu có tên chính xác trong Html.TextBox("")

Còn về jquery? Làm cách nào để đảm bảo rằng khi tôi thực hiện một cuộc gọi $.post(url, data, callback, dataType) hoặc gọi $.ajax(options) đến Create(Person personToCreate) đối tượng Người được điền đúng cách?

Trả lời

4

Bạn cần phải:

  1. Làm cho tên thuộc tính trong dữ liệu phù hợp với lập luận/tài sản của tên loại ràng buộc.
  2. Luôn cung cấp giá trị cho tất cả các đối số/thuộc tính không có giá trị của loại giới hạn.

Số 2 là quan trọng nhất về lý do ràng buộc với người có thể hoạt động khác với chỉ định các đối số hành động riêng lẻ cho mỗi thuộc tính. Nếu bạn có một loại có thuộc tính không nullable được gọi là "Foo", thì việc không cung cấp một mục foo trong biểu mẫu của bạn sẽ ngăn chặn ràng buộc.

+0

Và cách duy nhất để vượt qua đó là Trình kết nối mô hình tùy chỉnh? – Matt

+0

Hoặc thay đổi loại thuộc tính thành giá trị rỗng. –

+0

Hoàn hảo, cảm ơn! – Matt

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