建立一个使用.Net 2.0 MemberShip功能的标准例程(一)引子+预告 —— 这回不挖大坑了 保证填满...

自从上一次更新blog到现在已经过了8个月了,某个信息采集小项目也被取消了  所以这里把大坑删除先。

但是上次的项目让我注意到,原本预定在信息采集项目中应用的 .net Membership功能是相当丰富的。通过简单的内建对象和配置工具 我们可以清晰方便的为我们的多个小项目建立非常易于扩展的用户管理功能。实际我做过的很多OA MIS 系统都是用户权限管理模块最浪费时间,有了这套系统,我还真有点高枕无忧了。

如果看到这里  你对Membership还没有什么明确的概念,请打开你的 VS2k5  看看一个网站工程的工具栏
MembershipControls.PNG

“这不是那些莫名其妙的不能使用的登陆控件么”
没错,如果你没有用过Membership功能  这些控件所提供的事件、属性、方法 几乎是完全不可用的,果然是莫名其妙。

其实它们很好用,它们是一整套M$提供的登陆方案的基本面子成员。所谓侯门深似海,你看他们这几个控件并不起眼,但是你想象不到后面的封装有多麻烦,而我们用起来有多简单哦 @_@

先画一个简单的结构图
MembershipMain.PNG

如图所示 其实我们把这个系统叫做MemberShip,只是因为这个系统最基本的组成部分,管理用户的基本类叫做MemberShip,整个的登陆方案其实是 System.Web.Security整个命名空间来支持的,其实叫做.net 2.0 Web安全方案才对。当然习惯上已经约定俗成了(我们这些菜鸟容易被表面疑惑,所以自己先约定了- -b)

下面的章节 我将从如何配置Membership开始  一直连载到自定义ObjectDataSource 管理 Membership \Roles \Profile
 敬请期待


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个使用Qt 5.14中的SCXML功能的完整例程。 main.cpp: ```cpp #include <QCoreApplication> #include <QScxmlStateMachine> #include <QScxmlInvokableService> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 创建状态机 QScxmlStateMachine stateMachine; stateMachine.setScxml("example.scxml"); // 创建可调用服务 QScxmlInvokableService service; QObject::connect(&service, &QScxmlInvokableService::send, [&stateMachine](const QString &event, const QVariant &data) { stateMachine.submitEvent(event, data); }); // 注册可调用服务 stateMachine.addInvokableService("exampleService", &service); // 启动状态机 stateMachine.start(); return a.exec(); } ``` example.scxml: ```xml <?xml version="1.0" encoding="UTF-8"?> <scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" datamodel="ecmascript"> <state id="idle"> <onentry> <log label="stateEntry" expr="'Entering idle state'"/> </onentry> <transition event="testEvent" target="active"/> </state> <state id="active"> <onentry> <log label="stateEntry" expr="'Entering active state'"/> <send event="exampleSignal"/> </onentry> <transition event="exampleSignal" target="idle"/> </state> </scxml> ``` 在这个例子中,我们创建了一个简单的状态机,它有两个状态:idle和active。在idle状态中,当收到testEvent事件时,它将转换到active状态。在active状态中,当进入状态时,它将发送exampleSignal事件。当收到exampleSignal事件时,它将转换到idle状态。 我们还创建了一个可调用服务exampleService,它将用于发送事件到状态机。在main.cpp中,我们将可调用服务注册到状态机中,并启动状态机。 当运行程序时,你可以使用exampleService发送testEvent事件来触发状态转换。状态转换时,日志将记录在控制台中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值