Tôi có một hộp kết hợp trên một ứng dụng MVC3. Khi một mục mới được chọn, nó sẽ gửi lại bài đăng như tôi muốn. Tất cả đều ổn. Trong quá trình tôi bật trong một chuỗi truy vấn và đọc nó trên tải trang. Khi trang làm mới nó đọc chuỗi truy vấn và đặt các điều khiển khác nếu cần.Làm cách nào để phát hiện xem trang của tôi có phải là kết quả của một postback
Tuy nhiên, tôi cần phải phát hiện khi trang tải lại, do trang tải lại, ngược lại với lần tải trang đầu tiên. Điều này là do khi trang tải ban đầu, mọi thứ sẽ bị rối tung cho đến khi ai đó chọn thứ gì đó từ combobox.
Tuy nhiên, người dùng mới vào trang web sẽ không biết điều đó và sẽ chỉ thấy một mớ hỗn độn.
Tôi hiểu rằng các ứng dụng MVC3 không có cùng isPostback như ASP.Net và vì nhiều lý do mà tôi không hiểu, tôi biết nó bằng cách nào đó không được coi là "accaptable".
Tuy nhiên, tôi chỉ muốn biết nếu có một cách đáng tin cậy được đảm bảo 100% để phân biệt giữa lần tải trang đầu tiên và đăng lại theo cách tương tự như đã được thực hiện trong ASP.Net. Nếu có một cách như vậy, nó là gì và làm thế nào tôi có thể thực hiện nó.
Tôi đã thấy bài khác mà làm điều này:
public bool IsPostBack
{
get
{
return ViewBag.IsPostBack = (Request.HttpMethod == "POST");
}
}
nhưng tôi đọc những nơi khác rằng đây là luôn luôn đúng. Vì vậy, nếu điều này luôn luôn đúng, nó sẽ là đúng trên tải đầu tiên quá và trong như vậy, tôi không thể nói một cách đáng tin cậy nếu nó là một postback hay không. Tôi biết tất nhiên nó là một postback của một số loại. Nhưng nó không phải là nếu nó là một tải đầu tiên.
Bất kỳ ai cũng có thể giúp tôi trả lời câu hỏi này. Ngoài ra tôi đang sử dụng công cụ xem Razor như trái ngược với các công cụ xem aspx tiêu chuẩn.
không có 'bài đăng trở lại' trong asp.net mvc –
Sẽ rất thú vị khi xem cách bạn đang mã hóa Tác vụ của mình. Cách phổ biến nhất để phát hiện điều này là: GET là lần đầu tiên yêu cầu (nghĩa là, không phải là một postback) và POST, rõ ràng, sẽ là một postback –
Bạn vẫn đang nghĩ về ứng dụng trong kiến trúc webforms. Đây là Bad ™. Bạn nên kiểm tra một số hướng dẫn MVC3. – Tyrsius