마이크로소프트가 선호하는 ASP.NET Core 유산 위에 ASP.NET 그리고 앞으로의 모든 발전을 전자에서 할 계획입니다. 즉, ASP.NET은 서서히 쓸모가 없어지고 있습니다. 따라서 개발자들은 ASP로 전환하고 있습니다..NET Core 모든 향후 업데이트 및 기술의 이점을 누릴 수 있습니다.
그러나 몇 년 동안 ASP.NET을 사용해 온 사용자는 이 전환을 그렇게 원활하게 수행할 수 없습니다. 대신 일부 응용 프로그램을 ASP로 전환합니다..NET Core 그들 모두보다. 이 구성은 세션 공유를 제외한 모든 시나리오에서 작동합니다. 즉, 사용자는 ASP에서 ASP.NET 세션을 사용하거나 저장할 수 없습니다..NET Core 응용 프로그램과 그 반대의 경우도 마찬가지입니다.
솔루션은 다음과 같은 분산 캐시에 세션을 캐시하는 것입니다. NCache 웹 애플리케이션 간의 세션 공유를 처리하도록 합니다.
NCache 세부 정보 NCache ASP.NET 문서 NCache ASP.NET Core 기술 문서
다음을 사용하여 세션 데이터 공유 NCache
세션 데이터는 ASP.NET과 ASP 간에 공유할 수 없습니다..NET Core 응용 프로그램. 이는 둘 다 세션 데이터를 다르게 직렬화하고 다른 데이터 구조를 사용하기 때문입니다. NCache 세션 데이터를 캐시에 저장하여 이러한 문제를 해결합니다. 직렬화 방법 및 중간 데이터 구조. 따라서 ASP.NET 및 ASP에서 세션 데이터를 읽을 수 있습니다..NET Core 분야의 다양한 어플리케이션에서 사용됩니다.
다음을 사용하여 세션 공유를 구성하는 프로세스 NCache 도 간단합니다. NuGet 패키지를 다운로드하여 설치하기만 하면 됩니다. NCache ASP.NET 및 ASP 제공.NET Core 구성 파일을 일부 변경합니다. 다음 단계를 따르세요.
NCache 세부 정보 NCache 세션 공유 문서 동적 컴팩트 직렬화
ASP.NET 및 ASP용 NuGet 패키지 설치.NET Core
첫 번째 단계는 해당 NuGet 패키지를 설치하는 것입니다. NCache ASP.NET과 ASP 간의 세션 공유 제공.NET Core 분야의 다양한 어플리케이션에서 사용됩니다. NCache AspNet.SessionState를 제공합니다.NCache NuGet 패키지 ASP.NET 및 AspNetCore.Session용.NCache NuGet 패키지 ASP용.NET Core.
ASP.NET 응용 프로그램 구성
ASP.NET 응용 프로그램용 NuGet 패키지를 설치했으면 다음을 변경해야 합니다. 웹.구성 귀하의 응용 프로그램 파일. 아래의 sessionState
태그를 사용하려면 cookieName
속성은 ASP.NET과 ASP 모두에 대해 동일한 값을 갖습니다..NET Core 분야의 다양한 어플리케이션에서 사용됩니다.
아래의 providers
태그, 확인 sessionAppId
두 애플리케이션 모두에 대해 동일한 값을 가지며 enableSessionSharing
속성에는 가치가 있습니다 true
. 이러한 속성이 누락된 경우 추가해야 합니다. 샘플 구성은 다음과 같습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<sessionState ... customProvider="NCacheSessionProvider" cookieName="ASP.NET_CORE_SessionId" <providers> <add name="NCacheSessionProvider" type="Alachisoft.NCache.Web.SessionState.NSessionStoreProvider" enableSessionSharing="true" sessionAppId="NCacheSharedSessionApp" cacheName="myPartitionedCache" ... /> </providers> </sessionState> |
ASP 구성.NET Core 어플리케이션
ASP용 NuGet 패키지를 설치했으면.NET Core 애플리케이션을 변경해야 합니다. 앱 설정.json 귀하의 응용 프로그램 파일. ASP.NET과 마찬가지로 다음을 확인해야 합니다. CookieName
과 SessionAppId
속성은 응용 프로그램 및 EnableSessionSharing
속성의 값은 true입니다.
이 후에는 다음을 사용해야 합니다. 확장 방법 에 의해 제공 NCache 세션 공유용(나중에 설명). 샘플 앱 설정.json 파일 구성은 다음과 같습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
"NCacheSettings": { "CacheName": "demoCache", //Replace "demoCache" with the name of your cache "SessionAppId": "NCacheSharedSessionApp", "EnableSessionLocking": false, "SessionLockingRetry": -1, "EnableLogs": false, "EnableDetailLogs": false, "ExceptionsEnabled": false, "OperationRetry": 0, "operationRetryInterval": 0, "EnableSessionSharing": true, // Default value is false "SessionOptions": { "CookieName": "ASP.NET_CORE_SessionId", // For session sharing the cookie name for the web applications needs to be the same. "CookieDomain": null, "CookiePath": "/", "CookieHttpOnly": "True", "IdleTimeout": "20", "CookieSecure": "None" } } |
NCache 세션 공유를 위한 확장 방법
NCache 제공 확장 방법 ASP의 경우.NET Core 사용자 정의 개체 추가 및 가져오기를 지원하고 자동으로 개체의 직렬화/역직렬화를 처리하는 세션 인터페이스입니다. 이렇게 하면 바이너리/JSON 변환기를 사용하거나 클라이언트 측에서 데이터를 직렬화/역직렬화하기 위해 코드를 작성할 필요가 없습니다.
사용자가 ASP 간에 세션 공유를 활성화하려는 경우.NET Core 및 ASP.NET 응용 프로그램의 경우 이러한 확장 메서드를 사용하여 세션 데이터를 저장하고 검색해야 합니다. NCache 사용자의 ASP 사이에서만 개체를 역직렬화 및 직렬화할 수 있습니다..NET Core 이러한 확장 방법을 사용하는 경우 ASP.NET 세션.
다음 코드 예제에서는 ASP에 사용자 지정 개체를 추가합니다..NET Core 세션을 사용하여 Set
에서 제공하는 방법 NCache ASP용 확장 메서드.NET Core.
1 2 3 4 5 |
string key = "ProductID:1001"; Product customObejct = GetProduct(1001); // Add custom object to session with against key HttpContext.Session.Set(key, customObject); |
다음 코드 예제는 ASP에서 사용자 지정 개체를 가져옵니다..NET Core 세션을 사용하여 TryGetValue
에서 제공하는 방법 NCache ASP용 확장 메서드.NET Core:
1 2 3 4 |
string key = "ProductID:1001"; // Fetch custom object against key it was added against ("ProductID:1001") HttpContext.Session.TryGetValue(key, out customObject); |
NCache 세부 정보 ASP.NET Core 개체 캐싱 문서 NCache 세션 공유 문서
다음을 사용하여 세션 공유의 이점 NCache
다른 캐싱 공급업체가 없거나 ASP.NET과 ASP 간의 세션 공유 기능을 제공하지 않습니다..NET Core 응용 프로그램, 만 NCache 이 기능을 제공합니다. 뿐만 아니라 NCache 또한 구성을 매우 간단하고 비침습적으로 만들었습니다.
사용자는 해당 NuGet 패키지를 설치하고 해당 구성 파일(웹.구성 ASP.NET 및 앱 설정.json ASP용.NET Core), 그리고 사용 확장 방법 에 의해 제공 NCache 세션을 저장/검색합니다. 이 두 웹 프레임워크의 사용자는 이 기능을 통해 큰 이점을 얻을 수 있으며 두 프레임워크 간에 세션 데이터를 원활하게 공유할 수 있습니다.
결론
세션 공유처럼, NCache 또한 다양하고 효율적이며 구성 및 사용이 간편한 기타 여러 기능을 제공합니다. 풍모 모든 사용자를 위해. 세션 공유는 고유한 다른 기능 중 하나입니다. NCache 시장에 다른 곳에서는 존재하지 않습니다. 날 믿지 않아? 시험 NCache 지금 그리고 직접 확인하세요!
좋은 블로그! 모두에게 유용한 콘텐츠입니다 .NET core 개발자.
공유를위한 감사합니다!