asp.net problema de compartilhamento de sessões pode ser encontrado durante o desenvolvimento ou implantação, como compartilhar sessões entre diferentes aplicações? Procurei hoje, existem muitos métodos na Internet, entre os quais o uso de sessões de compartilhamento de banco de dados SqlServer é o mais comum; se você precisar ir ao Baidu sozinho, isso vai aparecer. Mas não seria um grande problema se o banco de dados não fosse SqlServer, mas algo diferente como Oracle? Felizmente, hoje encontrei outra forma de implementar o compartilhamento de sessão sem usar o banco de dados, ou seja, usando o método StateServer. Sem mais delongas, dê uma olhada nos passos de implementação:
1. Abra o registro, execute o cmd/regedit e encontre o nó HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\aspnet_state\Parameters
a. Defina o valor AllowRemoteConnection como 1
[b. Defina o valor da porta para a5b8 (hexadecimal), ou seja, decimal 42424 (padrão)]
O que foi dito acima literalmente permite conexão remota e configurações de portas
2. Mude o tipo de inicialização do serviço de computador "ASP.NET State Service" para Automático e inicie o serviço ao mesmo tempo.
3. Adicione-o sob o nó system.web no arquivo web.config do projeto web A e do projeto B do site, respectivamente
Lembre-se de substituir pelo IP do serviço e pela configuração de porta no passo 1
4. Adicionar o seguinte código ao Global.asax.cs do projeto do site A e do projeto do site B, respectivamente
Preste atenção em doisAPPNAME deve ser definido para o mesmo。 O que foi dito acima resolve o problema do compartilhamento de sessões. As soluções acima são referenciadas aqui
Por fim, você pode testar que consegue escrever Session no projeto A para ler no projeto B do site, ou escrever Session no projeto B para ler no projeto A.
|