设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 159|回复: 2
打印 上一主题 下一主题

NBear不使用附带数据库的安装方法

[复制链接]
跳转到指定楼层
1#
发表于 2009-3-16 18:54:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
具体常规的安装方法我这里就不描述了,方法见NBear安装配置,里面有详细的介绍。我下面要说的是在不使用NBear Starter Kit 自带数据库的安装方法。下面开始:

    一:建立基本的数据库  

   修改NBear.design里面的LiEntities.cs文件,给每个Interface都添加一个[ReadOnly]属性,这样防止数据库被覆盖。修改完代码如下  

using System;
using NBear.Common.Design;
namespace NBear.Designs
{
[MappingName("nb_Articles")]
[ReadOnly]
public interface nb_Articles_List_0 : Entity
{
[PrimaryKey]
int Id { get; }
int Sort_Id { get; }
[SqlType("nvarchar(128)")]
string Title { get; set; }
DateTime UpdateTime { get; set; }
DateTime CreateTime { get; set; }
}
[MappingName("nb_PageParts")]
[ReadOnly]
public interface nb_PageParts_List_0 : Entity
{
[PrimaryKey]
int Id { get; }
[SqlType("nvarchar(128)")]
string Title { get; set; }
}
[MappingName("vw_aspnet_MembershipUsers")]
[ReadOnly]
public interface nb_Users_List_0 : Entity
{
[PrimaryKey]
Guid UserId { get; set; }
string UserName { get; set; }
string Email { get; set; }
DateTime CreateDate { get; set; }
}
}  

    二:建立NBear Starter Kit里面的Membership Roles 等用户认证和权限管理需用数据库。  

   这个数据库的建立要用到一个工具aspnet_regsql.exe,DotNet 自带的。假设你DotNet Framework 安装到默认的路径,那么她的地址是C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727。直接运行她,出现向导(会先闪过一个command),根据向导,选择咱们自建的那个Nbear_Web数据库就ok了,现在在数据库中就添加了一系列的aspnet开头的表、视图和存储过程。

三:修改pageparts.ascx.cs的代码。  

   这个是因为NBear Starter Kit作为一个示例,没有考虑太多的通用性,在首页对pagepart的调用都是直接指定ID,如果用自己建立的数据库就会找不到或者找错ID造成错误,我把他的代码修改,增加了容错性能,防止错误的发生。  

using System;
public partial class UserControls_Common_PageParts : System.Web.UI.UserControl { // ***************************************************************************************************** public int PagePartId; // ****************************************************************************************************** protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { return; } BindData(); } // ***************************************************************************************************** protected void BindData() { try { ltlHtml.Text = (Page as BasePage).PagePartsDic[PagePartId].Replace("{RootPath}", (Page as BasePage).RootPath); } catch { ltlHtml.Text = "暂时没有内容"; } finally { } } // ****************************************************************************************************** }  

    虽然现在的通用性还是很低,我会进一步修改,增加通用性的,准备把她做成一个通用性高点的程序。  

    四:修改web.config

   修改web.config里面的关于role membership等想过块的内容,以便让自己可以登录进去。因为是自己建立的数据库,原先的那些附带的用户名和密码都已经无效了。要管理就要先自己建立用户,那么就需要修改web.config的内容,把她的基于forms base的认证方式给换一下,改成none。我们需要修改的web.config有三个,下面给出路径和修改内容的代码默认的web.config  





Admin目录下面的Web.config










  

    Admin目录下面的Users目录下面的Web.config  












    现在你就可以再不输入密码的情况下任意的穿梭管理啦。  

五:添加ManageRoles.aspx文件,添加Roles  

   这个我已经给出了,主要是添加系统默认的两个Roles Administrators和Super Users,这样才能让你该会原来web.config的时候也可以有权利访问Admin和Users目录。具体的原因可以参考asp.net 2.0的新特性 苏鹏讲的webcast的第六节课,asp.net 2.0 内建安全机制。代码包含在最后上传的代码中。  

    六:修改AdminMenu.ascx,添加manageroles.aspx的选项  


  



Welcome to NBear WebSite


LeftMenu  
导航|NAVIGATION




新闻|NEWS  

下载|DOWNLOD  






链接|LINKS




论坛|Google Group  





    八:添加Roles  

   在manageroles.aspx里面添加roles Administrator和Super Users就oK了。  


    经过以上8个步骤,现在的NBear Starter Kit已经可以运行,并且有了和导入数据库差不多的功能,当然还有瑕疵,这个以后慢慢修改。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-18 18:21 , Processed in 0.110538 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表