PDA

View Full Version : اشتراک session بین دو برنامه



Z.Abdollahi
یک شنبه 20 شهریور 1390, 11:34 صبح
سلام به همه دوستان.
من دو تا web app دارم که هر دو با framework 4 کار می کنن و روی یک سرور هستن. میخوام این دو تا برنامه یک لاگین داشته باشن. یعنی وقتی تو یکی لاگین کردم و لینکی رو که شامل آدرس اون یکی برنامه است، کلیک کردم به طور خودکار در اون برنامه هم لاگین بشم. روشی که استفاده کردم این بود که username کاربر جاری رو گذاشتم تو یک متغیر Session تا برنامه دوم بهش دسترسی داشته باشه. مشکل جالبی رخ می ده. اونم این که session Id هر دو طرف یکی هست اما متغیر Session در برنامه دوم خالیه. این کد مرتبط با session در web.config

<sessionState mode="SQLServer" allowCustomSqlDatabase="true" sqlConnectionString="data source=.;initial catalog=aspnetdb;uid=sa;pwd=1234!@#$;" useHostingIdentity="false" cookieless="false" timeout="20"/>

اینم کد مربوط به تعریف session در برنامه اول

Session.Add("Info", tmpUsername);
و کد استفاده از Session در برنامه دوم

string SingleSignOn_UserID = Session["Info"].ToString();
به نظر اساتید مشکل کجاست؟

Saman Hashemi
یک شنبه 20 شهریور 1390, 12:10 عصر
خوب چرا همچين كاري ميكني يه برنامه بنويس كه اين كار با استفاده از سرويس برات انجام بده كه اگه پروژه جديدي خواستي اضافه كني مشكلي برات پيش نياد...!

Z.Abdollahi
یک شنبه 20 شهریور 1390, 13:02 عصر
من متوجه منظورتون نشده. میشه لطف کنید و بیشتر توضیح بدین؟

Saman Hashemi
یک شنبه 20 شهریور 1390, 13:46 عصر
يه سرويس درست كن كه با استفاده ازش عمليات لاگين انجام بدي،از سايت دوم اطلاعات لاگين براي سرويس بفرست اون چك كنه...!

Z.Abdollahi
یک شنبه 20 شهریور 1390, 13:54 عصر
غیر از این راه دیگه ای نیست؟ اصلا لاگین هیچ. برای اشتراک session چه روش هایی وجود داره؟

aserfg
یک شنبه 20 شهریور 1390, 14:13 عصر
http://www.codeproject.com/KB/aspnet/Sharing_session_state.aspx

Saman Hashemi
یک شنبه 20 شهریور 1390, 15:29 عصر
http://www.codeproject.com/KB/aspnet...ion_state.aspx (http://www.codeproject.com/KB/aspnet/Sharing_session_state.aspx)
اينم (http://support.microsoft.com/kb/317604)بعد نيست...!