Problem z buforowaniem podczas ładowania częściowych widoków do okien dialogowych JQuery

Wyobraź sobie prostą listę użytkowników z linkami „edytuj”. Kliknięcie „Edytuj” otwiera okno dialogowe ze szczegółami dla wybranego użytkownika. Okno „Szczegóły” to widok częściowy.

Mam problem z buforowaniem częściowych widoków podczas otwierania ich w oknach dialogowych JQuery.

Mój widok częściowy (Zauważ, że atrybut OutputCache jest jedną z rzeczy, które próbowałem rozwiązać w kwestii buforowania):

    [HttpGet]
    [OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]
    public PartialViewResult EditUser(int id)
    {
     var userList = userRepository.GetByRole(id);

     return PartialView("EditUser",userList);
    }

Powyższy PartialView jest wymagany i ładowany z następującej funkcji Javascript:

function editUserOpen(id) {

    $.ajaxSetup({  ///// Another thing I tried to solve caching
        cache: false
    });

    var url = "/User/PartialViewResult/" + id;

    $('#user-wrap').empty().load(url, function () {

    $("#dialog-edit-user").dialog({
        title: "Edit User",
        autoOpen: false,
        height: 300,
        width: 500,
        modal: true
    });

        $('#dialog-edit-user').dialog("open");
    });
}

Jak pokazano powyżej „dialog-edit-user” (wraz z „dialog-add-user” i „dialog-delete-user”) znajdują się wewnątrz Div-user-wrap w DOM.

Funkcjonalnie wszystko działa, ale kiedy otwieram okno dialogowe, anuluję, a następnie próbuję otwierać okna dialogowe dla innych użytkowników, dopóki strona nie zostanie odświeżona, okna dialogowe będą zawsze zawierały informacje z początkowo wyświetlanego okna dialogowego. Uznałem, że jest to problem z buforowaniem, ale zabrakło mi sposobów na jego rozwiązanie.

Chciałbym trzymać się z dala od $ .ajax ({cache: false;}). Html (content), jeśli to możliwe. Wydaje mi się, że jest dużo wolniejszy niż .load ().

questionAnswers(2)

yourAnswerToTheQuestion