我在兩個web應用程序之間使用了sql server會話模式。 會話ID在ASPState數據庫中創建。我需要將會話ID從第一個應用程序分享到第二個,而不使用querystring和cookie。我遵循了這個link的步驟。以下是代碼。
在這兩個應用(web.config中)在兩個asp.net web應用程序之間共享相同的SessionId
<add name="DBConnection" connectionString="Data Source=localhost;DataBase=ASPState;Integrated Security=True;uid=sa;pwd=password-1" providerName="System.Data.SqlClient"/>
<sessionState mode="SQLServer" sqlConnectionString="DBConnection" allowCustomSqlDatabase="true" regenerateExpiredSessionId="false" cookieless="false" timeout="1" ></sessionState>
<machineKey validationKey="566A547C407CB0C47ABAEC581B8B90C45E15039806352E4611B35E0FB70C1C096350A4BBAE816191331DCA55874D3F96B41FFDED4C6A913591684A90825F53A0" decryptionKey="B299127DFC22648C2EF92D7EDF2E4960277F562C60F3BDE4A4C3BFDFEA602FDF" validation="SHA1" decryption="AES" />
<modules runAllManagedModulesForAllRequests="true">
<add name="BasicAuthenticationModule" type="UserAuthenticator" />
</modules>
在第一個應用程序Home.aspx.cs
protected void imgBTN_Click(object sender, EventArgs e)
{
string sessionKey = HttpContext.Current.Session.SessionID;
//How to transfer the same session id to the second application
Response.Redirect("http://localhost:43392/PartnerHome.aspx"");
}
我從ASPState的數據庫會話密鑰。但是如何從相同的會話ID傳遞到第二個應用程序?
是否在第二應用程序運行相同的服務器(主機)? –
@HenkHolterman第二個應用程序託管在不同的服務器上。 – kk1076
您可以將會話密鑰發佈到第二個應用程序中的特定頁面。 – VinayC