2014-09-30 2 views
0

Я пытаюсь использовать Ajax.ActionLink в проекте MVC4. Я включил эти два в мою страницу макета.Ajax.ActionLink не работает

@Scripts.Render("~/Scripts/jquery-1.7.1.js") 
@Scripts.Render("~/Scripts/jquery.unobtrusive-ajax.min.js") 

На мой О зрения у меня есть следующий код

<h3>Server Time</h3> 

<div id="timeDisplay"> 
    Time shown here 
</div> 
<div> 
    @Ajax.ActionLink("Click here for time", "ServerTime", new AjaxOptions{HttpMethod="GET", UpdateTargetId="timeDisplay"}) 

</div> 

метод действия Серверное время просто возвращает последний раз как долго строки Все прекрасно работает первый, но когда я нажимаю ссылку на него во второй раз ничего не происходит, метод Server не вызывается. Я проверил с FIDDLER, и сообщение Http не отправлено. Это потому, что он использует кешированный ответ. Как мне сделать это вызвать метод снова

ответ

0

Попробуйте украсить ваш ActionResult с OutputCache(NoStore = true ..

[OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")] 
public ActionResult ServerTime() 
{ 
    ... 
} 

Или попробуйте использовать HttpMethod = "POST" на ваших AjaxOptions

@Ajax.ActionLink("Click here for time", "ServerTime", new AjaxOptions{HttpMethod="POST", UpdateTargetId="timeDisplay"})