国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

WinForm/MIS項目開發之中按鈕級權限實踐

2019-11-17 03:18:37
字體:
來源:轉載
供稿:網友

WinForm/MIS項目開發之中按鈕級權限實踐

一、前言

AgileEAS.NET SOA 中間件平臺是一款基于基于敏捷并行開發思想和Microsoft .Net構件(組件)開發技術而構建的一個快速開發應用平臺。用于幫助中小型軟件企業建立一條適合市場快速變化的開發團隊,以達到節省開發成本、縮短開發時間,快速適應市場變化的目的。

AgileEAS.NET SOA中間件平臺提供了敏捷快速開發軟件工程的最佳實踐,通過提供大量的基礎支撐功能如IOC、ORM、SOA、分布式體系及敏捷并發開發方法所支撐的插件開發體系,以及提供了大量的實體、數據模型設計生成工具、代碼生成工具,用于幫助中小軟件開發商快速成長。

AgileEAS.NET平臺充分把握目前軟件行業快速發展的新趨勢,基于敏捷并行開發、快速適應市場這樣淳樸的軟件工程實踐,采用業界廣泛使用的Microsoft .Net構件(組件)開發技術實踐了這種開發思想,幫助軟件企業實現“敏捷變化、快速適合”的目標,從而幫助軟件企業在激烈的市場競爭中贏得先機并獲得更高的回報。

二、關于按鈕級權限

在AgileEAS.NET SOA5.0版本之中,AgileEAS.NET SOA平臺僅提供了基于模塊的權限管理體系,也沒有提供按鈕/子功能級別的權限控制體系。

有很多很多的使用者基于AgileEAS.NET SOA 中間件平臺進行應用開發的過程之中都提到這個問題,我們也給大家提供了一些解決思路和方案,但是一直沒有在平臺之中集成和實現一套標準的按鈕/子功能權限管理功能和標準的API。

在AgileEAS.NET SOA5.0版本發布之前我們實現一套按鈕/子功能級別的權限控制體系,提供了一個用于實現按鈕級權限管理功能的管理模塊及一給API接口。

三、按鈕級權限管理

在AgileEAS.NET SOA5.0版本之中,AgileEAS.NET SOA平臺僅提供了基于模塊的權限管理體系,也沒有提供按鈕/子功能級別的權限控制體系。

使用管理員登錄AgileEAS.NET SOA平臺WinClient容器,就會在系統管理導航組之中看到有一個“函數管理”模塊:

K[NB%4~6JG(QRD4U`AC{}2I

列表之中是所有的按鈕權限項目,存儲在模塊信息表之中,如果需要增加一個新的“按鈕/函數/權限項目”,使用添加功能,打開添加界面:

_KR7294@PL~6P1F~7Y4@WZ7

以上界面的操作會增加一個名稱為“藥品字典打印”字的按鈕級別的權限,其權限ID為“6a185217-34de-4fe7-9ed5-c2cc49ba432c”。

雙擊選中的按鈕級別的權限項,會打開“函數屬性”對話框可以針對此函數/權限項進行授權:

@[X])){NZARHI_PI9N}]LO3

授權方式同模塊級權限一模一樣,你也可以通過賬號管理和角色管理模塊進行授權。

四、API及如何使用

光提供一個管理功能還是不夠的,還必須要提供一組API以供開發人員使用,AgileEAS.NET SOA中間件平臺在應用程序對象(EAS.application類的單例對象EAS.Application.Instance)上定義一個驗證權限的API:

   1: //
   2: // 摘要:
   3: //     驗證權限,驗證當前系統登錄人員是否具有某個構件的訪問權限。
   4: //
   5: // 參數:
   6: //   component:
   7: //     構件Guid。
   8: //
   9: // 返回結果:
  10: //     驗證通過返回True,否則返回False。
  11: bool Demand(Guid component);

Demand方法需要傳入按鈕級別權限項/函數的定義ID,其他由交由平臺完成。

接下來我們在DrugShop案例案例之中的藥品字典模塊之中增加對“打印”按鈕的權限控制,Visual Studio打開DrugShop解決方案打開“藥品字典”模塊插件的代碼文件DrugDictList.cs,修改打印按鈕的事件如下:

   1: PRivate void tsbPrint_Click(object sender, EventArgs e)
   2: {
   3:     //驗證按鈕級別權限。
   4:     if (!EAS.Application.Instance.Demand(new Guid("6a185217-34de-4fe7-9ed5-c2cc49ba432c"))) 
   5:         return;
   6: 
   7:     if (this.dictList != null)
   8:     {
   9:         EAS.GReport.Controls.PrintViewDialog ViewDialog = new EAS.GReport.Controls.PrintViewDialog();
  10:         ViewDialog.ReportID = new Guid("F29C4C91-0791-4116-BE26-3A2A88F30A2A");
  11:         ViewDialog.DataObject = this.dictList;
  12:         ViewDialog.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
  13:         ViewDialog.WindowState = System.Windows.Forms.FormWindowState.Maximized;
  14:         ViewDialog.ShowDialog();
  15:     }
  16: }

這樣就完成了對本權限項的調用驗證。

四、執行驗證

我們編譯并且啟動DrugShop.Main.exe,使用0001密碼sa登錄,打開“藥品字典”模塊,查詢數據之后點擊“打印”按鈕:

image

0001不具有這個按鈕級權限項的權限,所以會提供沒有權限,我們換0002登錄并且執行同樣的操作:

image

OK,可以正常使用了,按鈕級權限演示完成。

DrugShop案例之中同步提供了本例子的權限定義和調用代碼,請大家通過AgileEAS.NET SOA中間件官方網站的最新下載欄目進行下載。

五、聯系我們

為完善、改進和推廣AgileEAS.NET而成立了敏捷軟件工程實驗室,是一家研究、推廣和發展新技術,并致力于提供具有自主知識產權的業務基礎平臺軟件,以及基于業務基礎平臺開發的管理軟件的專業軟件提供商。主要業務是為客戶提供軟件企業研發管理解決方案、企業管理軟件開發,以及相關的技術支持,管理及技術咨詢與培訓業務。

AgileEAS.NET SOA中間件平臺自2004年秋呱呱落地一來,我就一直在逐步完善和改進,也被應用于保險、醫療、電子商務、房地產、鐵路、教育等多個應用,但一直都是以我個人在推廣,2010年因為我辭職休息,我就想到把AgileEAS.NET推向市場,讓更多的人使用。

我的技術團隊成員都是合作多年的老朋友,因為這個平臺是免費的,所以也沒有什么收入,都是由程序員的那種理想與信念堅持,在此我感謝一起奮斗的朋友。

團隊網站:http://www.agilelab.cn,

AgileEAS.NET網站:http://www.smarteas.net

官方博客:http://eastjade.VEVb.com

QQ:47920381,AgileEAS.NET

QQ群:113723486(AgileEAS SOA 平臺)/上限1000人

199463175(AgileEAS SOA 交流)/上限1000人

212867943(AgileEAS.NET研究)/上限500人

147168308(AgileEAS.NET應用)/上限500人

172060626(深度AgileEAS.NET平臺)/上限500人

116773358(AgileEAS.NET 平臺)/上限500人

125643764(AgileEAS.NET探討)/上限500人

193486983(AgileEAS.NET 平臺)/上限500人

郵件:james@agilelab.cn,mail.james@qq.com,

電話:18629261335。


上一篇:【轉載】#324

下一篇:【轉載】#323

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 甘德县| 当阳市| 灵璧县| 长泰县| 抚顺县| 密山市| 始兴县| 固安县| 修水县| 渭南市| 白山市| 成武县| 遂宁市| 永靖县| 乌兰察布市| 肇庆市| 麻阳| 金川县| 宜兰县| 格尔木市| 太和县| 新竹市| 洪洞县| 台湾省| 贡山| 泰兴市| 泾阳县| 前郭尔| 遵化市| 淮安市| 会同县| 贵阳市| 清涧县| 新田县| 平顺县| 积石山| 阳原县| 利川市| 织金县| 达孜县| 澄城县|