您现在的位置是:首页 > cms教程 > discuz教程discuz教程
Discuz的NT配置文件类discuz.config说明
听蓉2025-06-26 16:54:10discuz教程已有4人查阅
导读如果大家从官方下载2.0正式版的DLL程序集中会从里面找到discuz.config这个DLL文件。通过reflector 反射加载这个程序集后,后从中找到一些从类名称上非常相似且有一定规律(格式)的类。
如果大家从官方下载2.0正式版的DLL程序集中会从里面找到discuz.config这个DLL文件。通过reflector 反射加载这个程序集后,后从中找到一些从类名称上非常相似且有一定规律(格式)的类。
它们是:
全局配置类 Emial配置类 基本配置类 相册配置类 聚合配置类 空间开通配置类 可以看到,这些类基本上是以三个一组,共六组。而这六组类中的...FileManager.cs与Defau-ltConfigFileManager.cs的关系从类图上看,DefaultConfigFileManager.cs是基类,而 而DefaultConfigFileManager本身也定义了几个属性和方法以便于子类调用或重写(如SaveConfig)。而DefaultConfigFileManager的定义如下: 如果您一直关注我们的这个产品,就会从中发现在1.0正式版时,这些类(或实现这些功能的类)还是零星分面在discuz.forum和discuz.forumpage(2.0正式版改名为discuz.web.dll)等几个DLL文件
中。后来因为考虑软件架构和出于统一配置管理的需求,产品小组将这些类重构到了discuz.config,从此这些类有了一个“新家”。
为了便于开发和统一接口调用,我们又创建了两个接口类,就是IConfigFileManager.cs,ICon-
figInfo.cs,它们的声明如下(相关说明见注释): 大家可以看到,其中的 IConfigInfo接口没有任何属性和方法,是一个“空接口”,这主要是为了提供统一的向上转型需要。当然,如果以后有需要还是会添加一些方法和属性的。
为了减少篇幅,下面只对其中的 GeneralConfig进行相应介绍,一是因为它是核心的配置类,有关它的使用在项目中不胜枚举。另外它也是这个项目中比较标准的“宝贝”,从一开始,只要有新的
功能往往都会对这个配置类有所“关照”。下面就是通过反射后得到的代码,相关的说明见注释即可:
论坛全局配置管理类(GeneralConfigFileManager): 论坛全局配置描述类(GeneralConfigInfo):
论坛全局配置类(GeneralConfigs): 通过对general系列配置类的介绍,再看其它的配置类会很清楚了。这里就不再多做解释了,相信2.0开源后大家看到源码和注释后会有所感悟的。
另外就是之前因为用到了“序列化”,所以可能会出现所谓的“内存碎片”的问题,详见下面链接:而微软官方所推荐的方式如下(http://support.microsoft.com/kb/886385/en-us): (这种方式是我们项目中所采用的方案)
它们是:
全局配置类 Emial配置类 基本配置类 相册配置类 聚合配置类 空间开通配置类 可以看到,这些类基本上是以三个一组,共六组。而这六组类中的...FileManager.cs与Defau-ltConfigFileManager.cs的关系从类图上看,DefaultConfigFileManager.cs是基类,而 而DefaultConfigFileManager本身也定义了几个属性和方法以便于子类调用或重写(如SaveConfig)。而DefaultConfigFileManager的定义如下: 如果您一直关注我们的这个产品,就会从中发现在1.0正式版时,这些类(或实现这些功能的类)还是零星分面在discuz.forum和discuz.forumpage(2.0正式版改名为discuz.web.dll)等几个DLL文件
中。后来因为考虑软件架构和出于统一配置管理的需求,产品小组将这些类重构到了discuz.config,从此这些类有了一个“新家”。
为了便于开发和统一接口调用,我们又创建了两个接口类,就是IConfigFileManager.cs,ICon-
figInfo.cs,它们的声明如下(相关说明见注释): 大家可以看到,其中的 IConfigInfo接口没有任何属性和方法,是一个“空接口”,这主要是为了提供统一的向上转型需要。当然,如果以后有需要还是会添加一些方法和属性的。
为了减少篇幅,下面只对其中的 GeneralConfig进行相应介绍,一是因为它是核心的配置类,有关它的使用在项目中不胜枚举。另外它也是这个项目中比较标准的“宝贝”,从一开始,只要有新的
功能往往都会对这个配置类有所“关照”。下面就是通过反射后得到的代码,相关的说明见注释即可:
论坛全局配置管理类(GeneralConfigFileManager): 论坛全局配置描述类(GeneralConfigInfo):
论坛全局配置类(GeneralConfigs): 通过对general系列配置类的介绍,再看其它的配置类会很清楚了。这里就不再多做解释了,相信2.0开源后大家看到源码和注释后会有所感悟的。
另外就是之前因为用到了“序列化”,所以可能会出现所谓的“内存碎片”的问题,详见下面链接:而微软官方所推荐的方式如下(http://support.microsoft.com/kb/886385/en-us): (这种方式是我们项目中所采用的方案)
本文标签:
很赞哦! (0)
上一篇:Discuz二次开发手册整理
暂无内容 |
暂无内容 |
相关文章
暂无内容 |
暂无内容 |
随机图文
Discuz模板安装后显示异常的原因和解决方法
在处理Discuz模板显示异常时,最关键的是理解这些问题可能源自哪里。通常,问题可能出现在模板文件的编码、样式表的引用、JavaScript脚本的加载、或者是模板与Discuz版本的不兼容性上。自动登录DISCUZ发帖的实现方法示例
有点无聊的东西,不是通用的,不过RD提供了我们论坛用的discuz的hashform的计算代码,也许通用的DISCUZ灌水机器人是我这种菜鸟也能搞出来的。Discuz论坛SEO优化排名提升技巧
1. url结构优化,使其简洁易抓取;2. 关键词优化,在帖子中自然嵌入关键词;3. 内容优化,定期发布高质量原创内容;4. 外部链接建设,通过社交媒体等增加外部链接;5. 社交媒体推广,增加曝光度和用户互动。Discuz怎么去掉portal.php
去掉portal.php的方法:首先打开“httpd.conf”文件;然后在htaccess下面加上语句“RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /portal\.php\ HTTP/”即可。
留言与评论 (共有 0 条评论) |