【发布时间】:2023-03-14 08:17:01
【问题描述】:
我是 asp.net 的新手,我正在尝试实现我的角色提供程序,实际上是 sql 角色提供程序。在我的角色提供者中,我添加了:
public void AddUsersToRole(string[] usernames, string[] rolenames)
{
SqlConnection conn =
new SqlConnection(
ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand("INSERT INTO Users " +
" (Username, Role) " +
" Values(?, ?)", conn);
SqlParameter Username = cmd.Parameters.Add("@Username", SqlDbType.NVarChar, 50);
SqlParameter Role = cmd.Parameters.Add("@Role", SqlDbType.NVarChar, 50);
try
{
conn.Open();
foreach (string username in usernames)
{
foreach (string rolename in rolenames)
{
Username.Value = username;
Role.Value = rolename;
cmd.ExecuteNonQuery();
}
}
}
但是当我在我的登录页面中输入以下内容时:
Roles.AddUsersToRole(TextBoxUsername.Text, DropDownListRole.SelectedItem.Value);
当我构建它时出现错误。
请帮忙,提前tnx。
【问题讨论】:
-
你遇到了什么错误?你能显示那个错误吗?你是否尝试过调试你的代码为什么会出现这个错误
-
为什么不使用 asp.net 会员服务提供商?
-
错误是:“'System.Web.Security.Roles.AddUsersToRole(string[],string) 的最佳重载方法匹配有一些无效参数”;和“论点 1:不能从 'string' 转换为 'string[]'”