Добавление главной страницы на веб-страницу aspx - PullRequest
0 голосов
/ 20 января 2012

Я в настоящее время ссылаюсь на этот веб-сайт для управления ролями AD.

Код C # работает нормально, но когда я вставил код в свою веб-страницу вместе с главной страницей, страница даламне ошибка, которая говорит:

Content controls have to be top-level controls in a content page or a nested master page that references a master page.

Могу ли я узнать, как мне установить мою главную страницу в этом случае?

.ASPX страница без главной страницы:

<%@ Page Language="C#" %>

<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Web.UI" %>

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

  string[] rolesArray;
  MembershipUserCollection users;
  string[] usersInRole;

  public void Page_Load()
  {
  ....
  }


  public void AddUsers_OnClick(object sender, EventArgs args)
  {
    ....
  }

  public void UsersInRoleGrid_RemoveFromRole(object sender, GridViewCommandEventArgs args)
  {
  ....
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Sample: Role Membership</title>
</head>
<body>
  <form runat="server" id="PageForm">
    <font face="helvetica" size="6" color="#455c75"><strong>Role Membership</strong></font><font face="helvetica" size="5" color="#455c75"><strong> Management</strong></font>
    <br /><asp:Label ID="Msg" ForeColor="maroon" runat="server" /><br />
    <table cellpadding="3" border="0">
      ...
    </table>
  </form>

Мастер-страница:

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

<!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>SOD</title>
    <link href="Styles.css" rel="stylesheet" type="text/css" />
</head>
<body>
...
</body>
</html>

РЕДАКТИРОВАТЬ:

Я попытался вставить MasterPageFile="~/MainPage.master" в первый тег, который начал мою страницу .aspx с <%@ Page Language="C#" MasterPageFile="~/MainPage.master"%>, давая мне ошибку, упомянутую выше.

Ответы [ 2 ]

1 голос
/ 20 января 2012

Мастер-страница содержит HTML-код и области содержимого. Страницы, использующие главную страницу, ДОЛЖНЫ иметь весь код в теге . Вы не можете иметь какой-либо код вне тега Content.

0 голосов
/ 20 января 2012

Вам нужно поместить свой код в тег <asp:Content ID="content1" ContentPlaceHolderID="Content_pageBody" Runat="Server"></content>.Этот тег должен соответствовать вашей главной странице, где ContentPlaceHolderID = имя заполнителя на вашей главной странице

...