¿Cómo hago TDD para un proveedor de membresía personalizada y un usuario de membresía personalizada?

StackOverflow https://stackoverflow.com/questions/76781

  •  09-06-2019
  •  | 
  •  

Pregunta

Necesito crear un usuario y proveedor de membresía personalizado para una aplicación ASP.NET mvc y estoy buscando usar TDD.He creado una clase de Usuario que hereda de la clase MembershipUser, pero cuando intento probarla aparece un error que no puedo entender.¿Cómo le doy un nombre de proveedor válido?¿Solo necesito agregarlo a web.config?Pero en este momento ni siquiera estoy probando la aplicación web.

falla] usertests.setup.usershouldhavemembershipUserProperties testcase 'usertests.setup.usershouldhavemembershebershebersproperties' falló:El nombre del proveedor de membresía especificado no es válido.Nombre del parámetro:Providername System.ArgumentException Mensaje:El nombre del proveedor de membresía especificado no es válido.Nombre del parámetro:Providername Fuente:Sistema.Web

¿Fue útil?

Solución

La configuración para agregar al archivo de configuración del proyecto de prueba unitaria se vería así:

  <connectionStrings>
     <remove name="LocalSqlServer"/>
     <add name="LocalSqlServer" connectionString="<connection string>" providerName="System.Data.SqlClient"/>
  </connectionStrings>
  <system.web>
     <membership defaultProvider="provider">
       <providers>
         <add name="provider" applicationName="MyApp" type="System.Web.Security.SqlMembershipProvider" connectionStringName="LocalSqlServer" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" requiresQuestionAndAnswer="false" maxInvalidPasswordAttempts="3" passwordAttemptWindow="15"/>
       </providers>
     </membership>
  </system.web>

Otros consejos

Sí, necesita configurarlo en su archivo de configuración (probablemente no web.config para una biblioteca de prueba, sino app.config).Aún usas la sección y dentro de ella la sección para hacer la configuración.Una vez que lo tenga en su lugar, podrá crear una instancia de su usuario y comenzar a probarlo.En ese momento, probablemente encontrará nuevos problemas, que creo que debería publicar como preguntas separadas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top