• ASP.NET Club Web Site Starter Kit扩展之一


       ASP.NET Club Web Site Starter Kit的使用很简单,功能也很强大,因此许多ASP.NET的初学者直接就拿来作为自己网站的组成部分。
        由于个人网站一般都使用的是虚拟主机,而且使用服务器提供的SQL Server2000数据库,那么在运行Club Web Site时,就需要在该SQL Server2000数据库里建立“成员-角色”等一些列表。
      但是即使你建立了这些表,在运行时仍然会发生错误,因为ASP.NET2.0 的Club Web Site Starter Kit默认使用内置的成员-角色,这样,当在代码里使用 Roles,Membership这类的方法时,你将发现Roles方法无法执行某些方法。
    例如Club Web Site Starter Kit 的Global.asax里有如下一句代码:

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

    <script runat="server">

     void Application_Start(object sender, EventArgs e) {
      if (!Roles.RoleExists("Administrators")) Roles.CreateRole("Administrators");
     }
     
    </script>

    它表示初次运行时,需要在数据库里建立Administrators角色。
    但是在执行Roles方法时,系统需要额外的权限来检测你的数据库设计是否符合执行某些SQL语句的权限。
    如果你的帐户在使用SQL Server 2000具有dbo权限,那么你可以没有障碍的运行。但是一般服务商只允许你对数据库仅具有 读/写的权限,那么这时就出现上述的错误。

    解决方案可以有如下两个办法
    1)要求你的数据库服务商给你更多的权限。这是最简单的解决方法。你不需要更改任何设置,只要它给你一定权限即可解决。
    2)自定义数据库Provider模型 
        如果数据库服务商不愿意给你更多的权限,那么我们只能自己解决。既然是ASP.NET2.0内置的功能需要SQL Server2000更多的权限,那么我们可以不用该内置的功能,而是使用自定义“成员-角色”Provider模型。这样所有的工作都在我的控制中,其中你也会看到ASP.NET2.0设计体系是多么的灵活,多容易的扩展。

    本文源代码附带了天天经过扩展的Club Web Site Starter Kit。
    单击下载该源代码,解压后,直接用VS.NET2005打开即可。
    /Files/mqingqing123/Cws2.rar
    (运行源代码后,你会发现系统使用了user,roles,userrole存放用户和角色,此处的扩展我主要实现了注册部分,其它的你可以继续扩展)

  • 相关阅读:
    使用 apache ant 轻松实现文件压缩/解压缩(转)
    Ajax下载文件(页面无刷新)
    java实现写大量数据到文件中
    mysql的wait_timeout配置(此处处理方法是有问题的,不建议作为操作参考)
    Class对象
    使用Comparable接口的小例子
    java打印菱形的简单方法
    自适应学习率调整:AdaDelta
    神经网络模型算法与生物神经网络的最新联系
    [杂谈]机器学习:数学、概率与人工智能
  • 原文地址:https://www.cnblogs.com/mqingqing123/p/480065.html
Copyright © 2020-2023  润新知