2013-02-25 43 views
0

我已经创造了一个asp.net作用:表将用户添加到角色声明在asp.net

<configuration> 

    <CustomUsersSection> 

    <Roles> 

     <add RoleName="Administrator"/> 
    </Roles> 

<Users> 


     <add UserName="admin" Password="password" 
      Email="[email protected]" Role="Administrator"/> 
    </Users> 
</CustomUsersSection> 

</configuration> 

现在我想添加的所有已添加到表从sql-server管理到上面定义的角色。感谢您的帮助。

My Admin table structure is as follows: 
AdminId 
AdminName 
EmailAddress 
... 
+1

您是否使用ASP.NET成员资格?无论如何,这还不足以有效回答你的问题。任何答案都必须对你的代码做出很多假设,以及它的结构。 – jadarnel27 2013-02-25 20:39:42

+0

先生,因为我们将用户添加到上述代码中的角色管理员。我想将所有管理员保存到我的表中动态地添加到管理员角色。这样每当有新的管理员添加到我的表中。它会自动分配给管理员角色。 – 2013-02-26 13:05:24

回答

0

假设您使用ASP.NET成员身份,我会考虑实现您自己的成员资格提供程序。你可以相对容易地做到这一点,Web上有很多关于如何做到这一点的材料。然后,您将能够实施自己的测试(例如数据库表中是否存在记录)以确定用户是否具有管理员角色。

虽然我建议您了解内置成员资格提供程序和ASP.NET自动创建的成员资格数据库,然后再执行此操作。这是因为这是一个相当不错的实现,它会为你自己做些劳动密集型的事情,比如加密存储的信息以防止被轻易入侵。

+0

Maam,我尝试实现ASP.NET成员资格,但是我创建的用户没有插入到aspnet_Users表中。因为它显示创建的用户数是2,但该表是空的,并且没有更新webconfig代码。什么可能是错误。正如我在解决方案资源管理器中通过网站所做的那样,它可以工作,但不能从解决方案资源管理器中的web应用程序。 – 2013-02-27 07:06:50

+0

有没有什么方法可以添加用户,然后在网站部署到现场后添加该用户? – 2013-02-27 08:07:11

+0

如果它表示创建的用户数是2,但是您的数据库副本不显示用户,最可能的原因是它指向的数据库与您正在查看的数据库不同。如果ASP.NET Membership无法找到它,它将创建一个数据库,因此它可能创建了一个新数据库并将新用户添加到该数据库中。 web.config中的连接字符串应该告诉您成员资格提供者在哪里查找数据库。 – 2013-02-27 15:07:19

相关问题