Настройка сеанса на Windows Azure - PullRequest
0 голосов
/ 29 января 2011

Я использую локальную систему для тестирования сеанса на Windows Azure.Я выполнил следующую конфигурацию в файле web.config

<appSettings>
    <!-- account configuration -->
    <add key="TableStorageEndpoint" value="http://127.0.0.1:10002/devstoreaccount1/" />
    <add key="BlobStorageEndpoint" value="http://127.0.0.1:10000/devstoreaccount1/" />
    <add key="AccountName" value="devstoreaccount1" />
    <add key="AccountSharedKey" value="Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==" />
    <add key="DefaultMembershipTableName" value="Membership" />
    <add key="DefaultRoleTableName" value="Roles" />
    <add key="DefaultSessionTableName" value="Sessions" />
    <add key="DefaultProviderApplicationName" value="ProviderTest" />
    <add key="DefaultProfileContainerName" />
    <add key="DefaultSessionContainerName" />
  </appSettings>
  <system.web>

    <sessionState mode="Custom" customProvider="TableStorageSessionStateProvider">
      <providers>
        <clear />
        <add name="TableStorageSessionStateProvider" type="Microsoft.Samples.ServiceHosting.AspProviders.TableStorageSessionStateProvider" />
      </providers>
    </sessionState>
</system.web>

, но теперь я получаю следующую ошибку

Ошибка конфигурации Описание: во время обработки файла конфигурации произошла ошибкатребуется для обслуживания этого запроса.Пожалуйста, просмотрите подробности конкретной ошибки ниже и измените файл конфигурации соответствующим образом.

Сообщение об ошибке синтаксического анализатора: исключение было вызвано целью вызова.

Ошибка источника:

Строка 39: Строка 40:
Строка 41: Строка 42: Строка 43:

Исходный файл: C: \ Users \ GizaKarthik \ Desktop \ SessionDemo \ SessionDemo_WebRole \ web.config Строка: 41

Трассировка загрузки сборки: следующая информация может быть полезна для определения, почему не удалось загрузить сборку 'Microsoft.WindowsAzure.StorageClient, версия = 1.0.0.0, Culture = нейтральный, PublicKeyToken = 31bf3856ad364e35'.

WRN: регистрация привязки сборки выключена.Чтобы включить ведение журнала ошибок привязки сборки, установите для параметра реестра [HKLM \ Software \ Microsoft \ Fusion! EnableLog] (DWORD) значение 1. Примечание. С журналированием ошибок привязки сборки связано некоторое снижение производительности.Чтобы отключить эту функцию, удалите значение реестра [HKLM \ Software \ Microsoft \ Fusion! EnableLog].

1 Ответ

0 голосов
/ 01 февраля 2011

Причина исключения заключается в том, что я использовал поврежденную DLL. Загрузите дополнительные примеры c # из здесь . Find asp предоставляет проекту редактировать код в TableStorageSessionstateProvider

найти этот код

            else            
            {     
                    byte[] items = Convert.FromBase64String(reader.ReadLine());
                    byte[] statics = Convert.FromBase64String(reader.ReadLine());
                    int timeout = session.Timeout;
                    // Deserialize the session
                    result = DeserializeSession(items, statics, timeout);

            }

заменить вышеуказанный код на этот

            else
            {
                try // Added try statement   
                {
                    // Read Items, StaticObjects, and Timeout from the file
                    byte[] items = Convert.FromBase64String(reader.ReadLine());
                    byte[] statics = Convert.FromBase64String(reader.ReadLine());
                    int timeout = session.Timeout;
                    // Deserialize the session
                    result = DeserializeSession(items, statics, timeout);
                }
                catch (Exception e) // Added catch statement
                {
                    // Return an empty SessionStateStoreData   
                    result = new SessionStateStoreData(new SessionStateItemCollection(),
                                                       SessionStateUtility.GetSessionStaticObjects(context),
                                                       session.Timeout);
                }

            }

Затем скомпилируйте и используйте dll. Это должно работать как чемпион. счастливого кодирования !!

...