none
The name 'UserName' does not exist in the current context RRS feed

  • Pregunta

  • Estimados todos:

    Solicito su apoyo, para que me asesoren que me falta definir de un textbox (login.aspx) y utilizarlo en (login.apsx.cs), porque se me presenta:

    <asp:TextBox ID="UserName" runat="server" Width="330px" />

    SqlParameter searchParameter1 = new SqlParameter("@mail", UserName.Text ?? string.Empty);

            - The name 'UserName' does not exist in the current context.  

    Mucho les agradezco su consejo e información

    JJ Duran

    martes, 1 de septiembre de 2015 21:30

Respuestas

  • hola

    >>En el   .aspx.designer.cs   veo algunas referencias a la labels, pero no de estos textbox.

    mm que raro

    comenta el codigo del evento btnLogin_Click

    quita del html la definicion de estos textbox y compila (valida que lo haga sin errores)

    luego vuelve a definir los textbox y vuelve a compilar

    por ultimo habilita el codigo del btnLogin_Click

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 3 de septiembre de 2015 17:27

Todas las respuestas

  • hola

    pero esa linea que define el parametro en que contexto lo estas ubicando ?

     lo defines dentro del login.apsx.cs en algun evento de un control ?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 1 de septiembre de 2015 21:37
  • Gracias Leandro:

    La especificación del control está en una webform llmada Login.aspx:

      <asp:TextBox ID="UserName" runat="server" Width="330px" />

    La referencia la hago en correspondiente Login.aspx.cs:

                string cs = ConfigurationManager.ConnectionStrings["QASDB"].ConnectionString;
                using (SqlConnection con = new SqlConnection(cs))
                {
                    SqlCommand cmd = new SqlCommand("uspqasLoginUser", con);
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlParameter searchParameter1 = new SqlParameter("@mail", UserName.Text ?? string.Empty);
                    SqlParameter searchParameter2 = new SqlParameter("@passw", Password.Text ?? string.Empty);

    y es aquí donde me indica que Username no está en el contexto, que requiero para ejecutar el store procedure.

    miércoles, 2 de septiembre de 2015 1:10
  • ok accedes al textbox en el aspx.cs, pero dentro evento de cual control ?

    una duda, de casualidad usas un proyecto del tipo Web Site? o es un Web Application

    o sea el proyecto compila el sitio a una dll ?

    lo pregunto proque este tipo de problemas lo he visto bastante seguido con los web site, recomendaria si puedes conviertas a web application

    que version de VS estas usando? o que version de .net framework ?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 2 de septiembre de 2015 7:02
  • Gracias nuevamente:  

    Estoy iniciandome en aplicaciones web (soy desarrollador en IBM mainframes, cobol, cics, db2 y he desarrollado con visual access) y aunque veo analogías, este es un mundo diferente;  uso Visual Studio Communty 2013 y creé un proyecto usando la opción "Web forms applications" con C# y versión 4.5 del framework.

    Esta opción genera un "cascarón" del cual pretendo apoyarme. Cabe mencionar que es mi primer intento de desarrollo, empezando con el login (llevo algunos cursos online, pero no es lo mismo a la hora de entrarle).

    Ya tengo definida mi base de datos y store procedures (SQL Server), lo cual hago antes comenzar con el desarrollo (para probar su funcionalidad).

    El evento el click de botón:

      

    protected void btnLogin_Click(object sender, EventArgs e)
    {
      string cs =   ConfigurationManager.ConnectionStrings["QASDB"].ConnectionString;
      using (SqlConnection con = new SqlConnection(cs))
      {
        SqlCommand cmd = new SqlCommand("uspqasLoginUser", con);
        cmd.CommandType = CommandType.StoredProcedure;
        SqlDataAdapter detalle = new SqlDataAdapter();
        detalle.SelectCommand.CommandType = CommandType.StoredProcedure;
        SqlParameter searchParameter1 = new SqlParameter("@mail", UserName.Text );
        SqlParameter searchParameter2 = new SqlParameter("@passw", Password.Text);

      }

    Quedo atento....saludos

    • Editado JJ Duran jueves, 3 de septiembre de 2015 0:23
    jueves, 3 de septiembre de 2015 0:07
  • hola

    bueno por lo que veo defiens el codigo den el evento de un boton de la misma pagina de login, por lo que el acceso a los controles de esa pagina no deberian causar problemas

    estas seguro que el Name del textbox le pusiste UserName? no usaste ningun prefijo como ser txtUserName o similar

    -----

    seguramente puedas ver en el solution explorer una signo de "+" junto al aspx de la pagina de login, al presionarlo se desplagaran varios archivos

    alli deberias ver un archivo que termina con Designer.cs, si analizas el codigo puedes ver definido alguna linea que mencione a ese textbox

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 3 de septiembre de 2015 1:58
  • Pues en el página (.aspx) describí:

    <asp:TextBox ID="UserName" runat="server" Width="330px" />

    <asp:TextBox ID="Password" runat="server" Width="330px" />

    En el   .aspx.designer.cs   veo algunas referencias a la labels, pero no de estos textbox.

    Gracias y quedo atento

    jueves, 3 de septiembre de 2015 17:05
  • hola

    >>En el   .aspx.designer.cs   veo algunas referencias a la labels, pero no de estos textbox.

    mm que raro

    comenta el codigo del evento btnLogin_Click

    quita del html la definicion de estos textbox y compila (valida que lo haga sin errores)

    luego vuelve a definir los textbox y vuelve a compilar

    por ultimo habilita el codigo del btnLogin_Click

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 3 de septiembre de 2015 17:27