asp.net kuriant ar diegiant gali kilti sesijos bendrinimo problema, kaip bendrinti sesijas tarp skirtingų programų? Šiandien jo ieškojau, internete yra daugybė metodų, tarp kurių labiausiai paplitęs "SqlServer" duomenų bazės bendrinimo seanso naudojimas, jei jums reikia patiems eiti į "Baidu", jis išeis. Bet ar tai nebūtų didelė problema, jei duomenų bazė būtų ne SqlServer, o kažkas panašaus į Oracle? Laimei, šiandien radau kitą būdą, kaip įgyvendinti sesijos bendrinimą nenaudojant duomenų bazės, tai yra, naudojant StateServer metodą. Nieko nelaukdami pažvelkite į įgyvendinimo veiksmus:
1. Atidarykite registrą, paleiskite cmd/regedit ir raskite mazgą HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\aspnet_state\Parameters
a. Nustatykite AllowRemoteConnection reikšmę į 1
[b. Nustatykite prievado reikšmę į a5b8 (šešioliktainė), ty dešimtainė 42424 (numatytasis)]
Tai, kas išdėstyta aukščiau, tiesiogine prasme leidžia nuotoliniu būdu prisijungti ir nustatyti prievadus
2. Pakeiskite kompiuterio paslaugos "ASP.NET State Service" paleidimo tipą į Automatinė ir tuo pačiu metu paleiskite paslaugą.
3. Pridėkite jį prie system.web mazgo web.config faile atitinkamai svetainės projekto A ir svetainės projekto B
Nepamirškite pakeisti paslaugos IP ir prievado, nustatyto 1 veiksme
4. Pridėkite šį kodą prie svetainės projekto A ir svetainės projekto B Global.asax.cs atitinkamai
Atkreipkite dėmesį į duAPPNAME turi būti nustatytas tas pats。 Tai išsprendžia sesijos bendrinimo problemą. Aukščiau pateikti sprendimai yra nurodyti čia
Galiausiai, galite patikrinti, ar galite parašyti sesiją svetainės projekte A, kad perskaitytumėte svetainės projekte B, arba parašyti Seesion svetainės projekte B, kad perskaitytumėte jį svetainės projekte A.
|