Mog*_*gli 1 c# asp.net interface class
我正在使用自定义角色提供程序,因为我创建了一个CustomRoleProvider
类并RoleProvider
在其中实现了一些方法,就像这样
public class CustomRoleProvider: RoleProvider
{
public override void CreateRole(string roleName)
{
throw new NotImplementedException();
}
public override bool DeleteRole(string roleName, bool throwOnPopulatedRole)
{
throw new NotImplementedException();
}
}
Run Code Online (Sandbox Code Playgroud)
所有方法都是公开的.但它显示错误
错误4 - 不一致的可访问性:基类'RoleProviderExample.RoleProvider'比类'RoleProviderExample.CustomRoleProvider'更难访问.
我在哪里做错了?
你也应该RoleProvider
上课public
.
public class RoleProvider
{
...
}
Run Code Online (Sandbox Code Playgroud)
基类不能比派生类更难访问.你的RoleProvider
班级可能access modifiers
没有CustomRoleProvider
上课.
public class CustomRoleProvider : RoleProvider
{
public void CreateRole(string roleName)
{
throw new NotImplementedException();
}
public bool DeleteRole(string roleName, bool throwOnPopulatedRole)
{
throw new NotImplementedException();
}
}
interface RoleProvider
{
void CreateRole(string roleName);
bool DeleteRole(string roleName, bool throwOnPopulatedRole);
}
Run Code Online (Sandbox Code Playgroud)
实际上,您不必public
在接口上编写关键字.界面成员是自动的public
.它们不能包含任何访问修饰符.