C# Roles.GetAllRoles() 错误 - 不包含定义
C# Roles.GetAllRoles() error - does not contain a definition
我正在尝试获取我的 C# 应用程序中的所有角色。
当我从以下位置复制 C# 代码时:https://docs.microsoft.com/en-us/dotnet/api/system.web.security.roles.getallroles?view=netframework-4.8
完全按照他们的示例进入单个 aspx 页面,然后页面工作,我可以看到角色并正确添加一个。
当我有以下代码隐藏代码时:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
namespace ToolingPMv2.Admin.Access
{
public partial class Roles : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string[] rolesArray;
rolesArray = Roles.GetAllRoles();
RolesGrid.DataSource = rolesArray;
RolesGrid.DataBind();
}
}
}
}
我的 aspx 页面:
<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Site.Master" CodeBehind="UserRoles.aspx.cs" Inherits="ToolingPMv2.Admin.Access.Roles" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<h2>Roles</h2>
<br />
<asp:GridView runat="server" CellPadding="2" id="RolesGrid" Gridlines="Both" CellSpacing="2" AutoGenerateColumns="false" >
<HeaderStyle BackColor="navy" ForeColor="white" />
<Columns>
<asp:TemplateField HeaderText="Roles" >
<ItemTemplate>
<%# Container.DataItem.ToString() %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:Content>
我收到以下错误:'ToolingPMv2.Admin.Access.Roles' 不包含 'GetAllRoles'
的定义
我想如果我有 'Using System.Web.Security' 我可以访问这个方法。
我做错了什么?这似乎是我现在应该知道的基本课程。
您页面的 class 被命名为 Roles
,因此将其隐藏在另一个命名空间中。您需要明确,例如:
rolesArray = System.Web.Security.Roles.GetAllRoles();
我正在尝试获取我的 C# 应用程序中的所有角色。
当我从以下位置复制 C# 代码时:https://docs.microsoft.com/en-us/dotnet/api/system.web.security.roles.getallroles?view=netframework-4.8 完全按照他们的示例进入单个 aspx 页面,然后页面工作,我可以看到角色并正确添加一个。
当我有以下代码隐藏代码时:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
namespace ToolingPMv2.Admin.Access
{
public partial class Roles : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string[] rolesArray;
rolesArray = Roles.GetAllRoles();
RolesGrid.DataSource = rolesArray;
RolesGrid.DataBind();
}
}
}
}
我的 aspx 页面:
<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Site.Master" CodeBehind="UserRoles.aspx.cs" Inherits="ToolingPMv2.Admin.Access.Roles" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<h2>Roles</h2>
<br />
<asp:GridView runat="server" CellPadding="2" id="RolesGrid" Gridlines="Both" CellSpacing="2" AutoGenerateColumns="false" >
<HeaderStyle BackColor="navy" ForeColor="white" />
<Columns>
<asp:TemplateField HeaderText="Roles" >
<ItemTemplate>
<%# Container.DataItem.ToString() %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:Content>
我收到以下错误:'ToolingPMv2.Admin.Access.Roles' 不包含 'GetAllRoles'
的定义我想如果我有 'Using System.Web.Security' 我可以访问这个方法。
我做错了什么?这似乎是我现在应该知道的基本课程。
您页面的 class 被命名为 Roles
,因此将其隐藏在另一个命名空间中。您需要明确,例如:
rolesArray = System.Web.Security.Roles.GetAllRoles();