asp.net Problém so zdieľaním relácií sa môže vyskytnúť počas vývoja alebo nasadenia, ako zdieľať relácie medzi rôznymi aplikáciami? Dnes som to hľadal, na internete je veľa metód, medzi ktorými je najbežnejšie používanie databázového zdieľania SqlServeru, ak potrebujete ísť na Baidu sami, objaví sa to. Ale nebolo by veľkým problémom, keby databáza nebola SqlServer, ale niečo iné, napríklad Oracle? Našťastie som dnes našiel ďalší spôsob, ako implementovať zdieľanie relácií bez použitia databázy, teda použitím metódy StateServer. Bez ďalších rečí, pozrite sa na kroky implementácie:
1. Otvorte register, spustite cmd/regedit a nájdite uzol HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\aspnet_state\Parameters
a. Nastavte hodnotu AllowRemoteConnection na 1
[b. Nastavte hodnotu portu na a5b8 (hexadecimálne), t.j. desatinné 42424 (predvolené)]
Vyššie uvedené doslova umožňuje vzdialené pripojenie a nastavenie portov
2. Zmeniť typ spustenia počítačovej služby "ASP.NET State Service" na Automatic a spustiť službu súčasne.
3. Pridať ho pod uzol system.web v súbore web.config projektu webu A a projektu B
Nezabudnite v kroku 1 nahradiť IP adresou služby a portom nastaveným
4. Pridať nasledujúci kód do Global.asax.cs projektu webovej stránky A a projektu B
Venuj pozornosť dvomAPPNAME by mal byť nastavený na rovnaké。 Vyššie uvedené rieši problém zdieľania relácií. Vyššie uvedené riešenia sú tu uvedené
Nakoniec môžete otestovať, či dokážete napísať Session v projekte webu A na čítanie v projekte B webu, alebo napísať Seesion v projekte B na čítanie v projekte A.
|