一个关于CAB的问题,在类似BankTeller示例的BankShell项目中,如何调用BankTellerModule项目中的Service进行用户验证?
您好!您将解决我一个困扰多天的问题!
我对CAB还不是十分熟悉,仿照了BankTeller建立了一个解决方案。
我看到敏捷框架(http://www.agilelabs.cn/agileframework/)的登录窗体是在WinShellApp中的,那么,
1.如果我在WinApp中登录的时候,如何调用Module项目中的Service来判断用户是否登录成功呢?
2.我如何在Module项目中关闭登录窗体呢?
3.Module项目中,除了WorkItem的这些控件,还能包括弹出窗体吗?
我的解决方案结构如下:
======================================================
WinAppShell 项目(Windows应用程序,启动项)
WinAppShell // Forms // LoginForm.cs
WinAppShell // Program.cs
WinAppShell//WinShellApplication.cs ==> public class WinShellApplication:FormShellApplication <WorkItem, MainForm>
-----------------
MyModule项目(类库,待加载的模块项目)
MyModule//Services//CommonService.cs 这个可以获取到远程服务,其中也包括登录的合法性验证.
----------------
CommonLibrary项目(公共类型库项目,包括Entity都在其中)
MyBusiness项目(业务逻辑层)
------解决方案--------------------up
------解决方案--------------------帮你顶
------解决方案--------------------继承AuthenticationService,在这个Service中加载Login验证部分
在ShellApplication的AfterShellCreated中调用这个service,如果验证成功,继续加载,失败则退出;验证成功会记录用户到Principal中去
我们项目用CAB
------解决方案--------------------来学习下