를 다시로드하지 않고 내가 하나 개의 웹 페이지에 ConversionModel 객체의 목록을 표시하고자하는 객체ASP.NET MVC 3 표시 목록 웹 페이지
List<ConversionModel> Queue
의 ASP.NET MVC 3 웹 응용 프로그램 및 목록을 가지고 웹 페이지를 다시로드하지 않고 5 초마다 새로 고침 MVC 3을 처음 접했고 어떤 예제도 찾을 수 없습니다.
를 다시로드하지 않고 내가 하나 개의 웹 페이지에 ConversionModel 객체의 목록을 표시하고자하는 객체ASP.NET MVC 3 표시 목록 웹 페이지
List<ConversionModel> Queue
의 ASP.NET MVC 3 웹 응용 프로그램 및 목록을 가지고 웹 페이지를 다시로드하지 않고 5 초마다 새로 고침 MVC 3을 처음 접했고 어떤 예제도 찾을 수 없습니다.
AJAX를 사용할 수는 있지만 서버에 좋은 영향을 미치지는 않습니다. 적어도 사이트의 모든 사용자가 5 초마다하는 것입니다.
클라이언트 측 :
<script type="text/javascript">
// This is to refresh the items every 5 seconds (5000 milliseconds)
setInterval(getMyData, 5000);
function getMyData() {
// Using $.getJSON for simplicity, but try to use $.ajax or $.post
$.getJSON('/MyController/MyAction', function(response) {
var items = response.d.items;
// Iterate through the items here and add the items to your web page
});
}
</script>
서버 측 :
public JsonResult MyAction()
{
List<ConversionModel> conversionModels = GetMyDataSomewhere();
return Json(new {
items = conversionModels
}, JsonRequestBehaviour.AllowGet);
}
jQuery를 사용하면 컨트롤러에 x 분마다 요청을 보내 모델을 부분보기로 반환합니다. 메인 페이지
자바 스크립트는 다음과 같이 수 :
function timerMethod() {
$.ajax({
type: "get"
url: "/Controller/Action",
cache: false,
success: function(result){
$("#partialContainer").html(result);
}
});
var timerId = setInterval(timerMethod, 5000); // 5 seconds
컨트롤러/액션 부분 뷰를 돌려 당신의 작업입니다.
또한 Views \ Controller에서 Action이라는 이름으로보기를 작성하고 모델의 모든 오브젝트 (모델은 List<ConversionModel>
이어야 함)를 표시하도록 작성해야합니다. 희망이 도움이된다
5 초마다보기를 업데이트하면 필요한 모든 것이 바로 타이머와 결합 된 간단한 아약스로 끝날 수 있습니다. , 당신은 (중 데이터베이스에서 ConversionModels
세트를 가져 와서 그것에서 응답을 생성하여 컨트롤러 중 하나의 작업 방식을 가지고 JSON을
셋째해야합니다 참조 또는 직접 HTML 마크 업).
$.ajax()
기능에 대한 설명서를 읽는다면 함께 사용하는 방법을 알 수있을 것입니다.
그러나 실제로 활동에 관계없이 5 초마다 서버를 폴링하는 것보다 유연성이 필요한 경우 서버에서 클라이언트로 데이터를 푸시하는 훌륭한 라이브러리 인 SignalR (예 : 브라우저).