Ошибка runat в файле aspx

у меня есть код формы входа с главной страницей, но я вижу ошибку, когда запускаю ее в браузере. Я не могу понять ошибку, как я могу ее удалить? Изображение ошибки также прилагается. Пожалуйста, кто-нибудь может мне помочь?

Мой код:

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Login.aspx.cs" 
Inherits="Login" %>

<%@ MasterType VirtualPath="~/MasterPage.master" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Login Form</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table align="center">

<b>Login Form</b>

<tr>
<td>
Username:
</td>
<td>
<asp:TextBox ID="txtUserName" runat="server"/>
<asp:RequiredFieldValidator ID="rfvUser" ErrorMessage="Please enter Username" ControlToValidate="txtUserName" runat="server" />
</td>
</tr>
<tr>
<td>
Password:
</td>
<td>
<asp:TextBox ID="txtPWD" runat="server" TextMode="Password"/>
<asp:RequiredFieldValidator ID="rfvPWD" runat="server" ControlToValidate="txtPWD" ErrorMessage="Please enter Password"/>
</td>
</tr>
<tr>
<td>
</td>
<td>
<asp:Button ID="btnSubmit" runat="server" Text="Submit" onclick="btnSubmit_Click" />
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
</asp:Content>

Код главной страницы:

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body style="background-color:Teal;">

    <form id="form1" runat="server">
    <div align="center">
        <h1>My Test WebSite</h1>
        <div align = "left">
            <asp:Label ID="lblpageName" runat="server"></asp:Label>

        <asp:Menu ID="Menu1" runat="server" BackColor="#B5C7DE" DynamicHorizontalOffset="3"
            Font-Names="Verdana" Font-Size="1em" ForeColor="#284E98" Orientation="Horizontal"
            StaticSubMenuIndent="20px" Height="25px" Width="550px">
            <StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="3px" />
            <DynamicHoverStyle BackColor="#284E98" ForeColor="White" />
            <DynamicMenuStyle BackColor="#B5C7DE" />
            <StaticSelectedStyle BackColor="#507CD1" />
            <DynamicSelectedStyle BackColor="#507CD1" />
            <DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
            <Items>
                <asp:MenuItem Text="HOME" Value="HOME" NavigateUrl="~/Default.aspx"></asp:MenuItem>
                <asp:MenuItem Text="ABOUT" Value="ABOUT" NavigateUrl="~/about.aspx"></asp:MenuItem>
                <asp:MenuItem Text="CONTACT" Value="CONTACT" NavigateUrl="~/contact.aspx"></asp:MenuItem>
                <asp:MenuItem NavigateUrl="~/Change.aspx" Text="CHANGE" Value="CHANGE"></asp:MenuItem>
                <asp:MenuItem Text="LOGIN" Value="Login" NavigateUrl="~/Login.aspx"></asp:MenuItem>
            </Items>
            <StaticHoverStyle BackColor="#284E98" ForeColor="White" />
        </asp:Menu>

        </div>
        <!-- Here we have content place holder where all content pages will render their controls   -->
        <hr />
        <asp:contentplaceholder id="ContentPlaceHolder1" runat="server">
        </asp:contentplaceholder>

    </div>
    </form>
</body>
</html>

Изображение ошибки: введите здесь описание изображения


person Community    schedule 18.07.2013    source источник
comment
На главной странице вы уже включили раздел заголовка, поэтому вам не следует делать это в login.aspx.... если вы хотите иметь отдельный раздел заголовка для каждой страницы, то на главной странице используйте заполнитель   -  person Zaki    schedule 18.07.2013
comment
@ Сэм, так ты имеешь в виду, что я удаляю эту строку? ‹head id=Head1 runat=сервер›   -  person    schedule 18.07.2013
comment
да удалите раздел заголовка из login.aspx или используйте заполнитель содержимого на мастер-странице   -  person Zaki    schedule 18.07.2013


Ответы (2)


Вы используете MasterPage, который также имеет тег Head, поэтому вы получаете эту ошибку. Поэтому удалите его со своей страницы контента.

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div>
<table align="center">
<b>Login Form</b>
....
person Tim Schmelter    schedule 18.07.2013

Удалите runat="server" со своей страницы контента.

оставьте как <head>.....</head>

Поскольку на главной странице у вас есть тег заголовка с runat=server (может быть), вы должны удалить его со страницы содержимого.

ИЗМЕНИТЬ:

Удалить следующее:

<head id="Head1" runat="server">
<title>Login Form</title>
</head>
person C Sharper    schedule 18.07.2013
comment
когда я удаляю runat=server, появляется другая ошибка: страница может иметь только один тег формы на стороне сервера. - person ; 18.07.2013
comment
@MuhammadSaqib, если заголовок там не требуется (кажется, не требуется), удалите его - person C Sharper; 18.07.2013
comment
Мне очень жаль, я не могу понять. можете ли вы отредактировать мой код для меня, пожалуйста. - person ; 18.07.2013
comment
он не работает, он показывает другую ошибку Страница может иметь только один тег формы на стороне сервера. - person ; 18.07.2013