ヘルプが必要です。asp.net MVC3 でアプリケーションを作成しており、生成されたカスタム セッション ID を設定したいのです。
var str = Math.floor(Math.random() * (2000 - 1000 + 1)) + 1000;
document.write("Session ID::" + str);
上記のコードは Java スクリプト関数で記述されており、ASP.NET MVC3 のセッション ID にその番号を設定したいと考えています。
ヘルプが必要です。asp.net MVC3 でアプリケーションを作成しており、生成されたカスタム セッション ID を設定したいのです。
var str = Math.floor(Math.random() * (2000 - 1000 + 1)) + 1000;
document.write("Session ID::" + str);
上記のコードは Java スクリプト関数で記述されており、ASP.NET MVC3 のセッション ID にその番号を設定したいと考えています。
Google で簡単に検索すると、asp.net でセッション ID を上書きする方法を説明する次のブログ エントリが表示されます。
http://weblogs.asp.net/anasghanem/archive/2008/12/16/programmatically-ching-the-session-id.aspx
つまり、 SessionIDManagerクラスを使用し、SaveSessionIdメソッドを呼び出して、独自のセッション ID を設定します。
SessionIDManager manager = new SessionIDManager();
string mySessionId = ...calculateYourOwnSessionId...;
bool redirected = false;
bool IsAdded = false;
manager.SaveSessionID(Context, mySessionId, out redirected, out IsAdded);
カスタム セッション値は暗号的に安全な乱数ジェネレーターを使用して生成されず、セッション管理に関するアプリケーションに脆弱性を導入するため、これは絶対に避ける必要があります。
現在のセッション識別子を取得する必要がある場合は、次の 2 つの方法のいずれかを実行できます。
// If in a page or user control:
string sessionId = this.Session.SessionID;
// In ASP.NET in a normal class:
string sessionId = System.Web.HttpContext.Current.Session.SessionID;
詳しくはこちらをご覧ください。