Pergunta

Eu tenho um simples, único-página no ASP.NET (C #). Eu queria adicionar controle login, LoginView então eu só adicionado como se segue:

<form id="form1" runat="server">

<asp:LoginView ID="LoginView1" runat="server">

    <AnonymousTemplate>
        <asp:Login ID="Login1" runat="server">
        </asp:Login>
    </AnonymousTemplate>

    <LoggedInTemplate>
        ... here I put all the page elements (buttons, grid views, etc.)
    </LoggedInTemplate>

</asp:LoginView>   

</form>

Quando eu executar o meu projeto eu recebo erros de compilação no meu arquivo-behing código:

The name xxxx does not exist in the current context

O que estou fazendo de errado? Eu sou novo no ASP.NET, então provavelmente é algum erro estúpido que eu faço.

Foi útil?

Solução 2

Eu encontrei este como a solução para o meu problema. Eu posso usar isso, para obter meus objetos.

Label Label1 = (Label)LoginView1.FindControl("Label1");

Eu não sei se é a única solução. Talvez alguém tenha melhor.

Outras dicas

Existem várias causas possíveis deste problema.

Uma delas é que você tem um cópia de backup em algum lugar esse mesmo arquivo em seu projeto.

Outra é que dois arquivos diferentes ASPX estão usando o mesmo arquivo CS para o código -behind.

Uma terceira é que você se esqueceu de incluir System.Web ou algum outro arquivo que você precisa.

Hope um destes ajuda!

A minha solução: Este é um projecto exemplar caso de aplicação web. solução: projeto Botão direito do mouse no VisualStudio escolha "Converter para aplicativo web". esta é uma boa solução

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top