簡體   English   中英

在ASP.NET C#JSON中重新啟動會話

[英]Restart session in asp.net c# an json

我希望您能在這個主題上為我提供幫助,我正在使用ASP.NET C#開發一個項目,問題是我需要單擊一個標簽來執行Json,從而結束了該會話,為此,您必須調用方法RestartSesion()。

所有代碼都在MasterPage中。

問題在於僅警報顯示文本''錯誤; ”。

我告訴你我做了什么。

我有一個VSesion類,它具有幾種方法,但是我今天正在研究的方法是RestartSesion。

public static void ReiniciarSesion()
{
     HttpContext.Current.Session.Abandon();        
     HttpContext.Current.Response.Redirect(Resources.SitePages.Login);
}

Template.Master.cs調用ReiniciarSesion

[WebMethod]
public static void ReiniciarSession()
{
     VSesion.ReiniciarSesion();
}

模板大師 這是我的麻煩。

<script language="javascript" type="text/javascript">
    $(document).ready(function() {
        $("#Reiniciar").click("click", function() {
            ReiniciarSession();
        });
    });
    function ReiniciarSession() {
        $.ajax({
            type: "POST",
            url: "Template.Master/ReiniciarSession",
            data: {},
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            async: true,
            error: function(XMLHttpRequest, textStatus, errorThrown) {
                alert(textStatus + ": " + XMLHttpRequest.responseText);
            }
        });
    }
</script>

這是HTML模板:

<ul>
    <li>
      <a href="#" id="Reiniciar">
         <span>Salir</span>
      </a>  
    </li>
</ul>

<script src="JS/jquery.js" type="text/javascript"></script>
<script src="JS/jquery-1.11.3.min.js" type="text/javascript"></script>

我希望你能幫助我。 謝謝。!!

正如@JeroenHeier所指出的, Template.Master/ReiniciarSession指向母版頁,而實際的.aspx頁使用它們來呈現,因此無法瀏覽。 您必須在特定頁面(例如Login )而不是Master頁面中實現ReiniciarSession WebMethod

然后將AJAX調用更改為該頁面:

function ReiniciarSession() {
    $.ajax({
        ...
        url: "/Login.aspx/ReiniciarSession",
        ...
    });
}

由於會話與您正在瀏覽的頁面無關,因此效果是相同的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM