Членство в тестовом модуле - PullRequest
0 голосов
/ 10 февраля 2012

Я тестирую интеграцию контроллера MVC, который использует API членства.Я добавил свой app.config ниже.Тесты пытаются выполнить, но когда они делают вызов API, они возвращают ноль.Я проверяю объект Membership, и он не содержит мою строку подключения, он содержит строку по умолчанию, полученную из machine.config.Это также не забирает мое настроенное имя приложения.Мне кажется, что у меня проблема с моим app.config до такой степени, что api членства не собирает свои настройки.

Может кто-нибудь определить ошибку?

var usr = Membership.GetUser(AValidGuid);  This is always null!!!!


<?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
        <section name="membership" type="System.Web.Configuration.MembershipSection, System.Web" />
        <section name="roleManager" type="System.Web.Configuration.RoleManagerSection, System.Web" />
      </configSections>
      <connectionStrings>
        <add connectionString="server=;user id=;password=;database=" name="SqlProvider" />
      </connectionStrings>

      <membership defaultProvider="AspNetSqlMembershipProvider">
        <providers>
          <remove name="AspNetSqlMembershipProvider"></remove>
          <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="SqlProvider" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression="" applicationName="/test" />
        </providers>
      </membership>
      <roleManager enabled="true" defaultProvider="AspNetSqlProvider">
        <providers>
          <remove name="AspNetSqlRoleProvider"></remove>
          <add connectionStringName="SqlProvider" applicationName="/test" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        </providers>
      </roleManager>
</configuration>

1 Ответ

0 голосов
/ 10 февраля 2012

Ваш app.config необходимо обновить для приложения, выполняющего тест.Это то, к чему относится опубликованный app.config?Я знаю, что это базовая вещь, но многие люди зацикливаются на том, какой конфиг используется тестовым бегуном.

...