ASP.NET Aries 3.0發布(附帶通用API設計及基本教程介紹)

來源:互聯網
上載者:User

標籤:

主要更新:

1:升級處理機制(js請求由同步變更為非同步)

2:最佳化前端JS:包括API和配置方式。

3:增加InputDialog功能。

4:增遠遠程驗證功能。

5:最佳化許可權安全機制。

6:增加一次請求多個方法的功能。

7:最佳化支援文本資料庫(為了示範Demo,節省我伺服器的資源)

從舊版本升級的注意事項:

Config_Grid表的欄位變更:

viewname欄位,變更為Rules,長度為250。

MergeIndexed,改名為:MergeIndex。

開源地址:

GitHub:https://github.com/cyq1162/Aries

Demo示範:http://aries.cyqdata.com/login.html (已經把Demo掛回自己的VPS,同時用上了文本資料庫)

JS API通用設計思維介紹:1:名稱空間:

AR.DataGrid:動作表格和樹形表格(需要執行個體化)。

AR.Upload:操作檔案上傳(需要執行個體化,如:匯入按鈕(點擊的時候彈出上傳Excel檔案功能))。

AR.Form:動作表單頁面(如普通的編輯或新增頁面)。

AR.Combobox:操作下拉框對象。

AR.Utility:通用工具類:如AR.Utility.Ajax類就在這裡面。

AR.Global:全域對象。

2:通用事件與屬性:

1:對象(包括按鈕)都有$target,擷取JQ對象。

2:對象(包括按鈕)都有isHidden屬性,可以按鈕顯示或隱藏。

3:對象(包括按鈕)都有三個事件(不管是按鈕還是對象的初始化):

onBeforeExecute

onExecute(預設都執行這個)

onAfterExecute

處理時,根據業務,找到對應的對象,處理該事件即可。

4:有些對象有Items屬性(dg.Search.Items、dg.PKColumn.Items、AR.Global.DG.Items)

5:有些對象有add方法。

AR.DataGrid 簡單介紹:1:支援類型(普通表格(datagrid)和樹形表格(treegrid)):2:範例程式碼:

var dg=new AR.DataGrid(objName,tableName,id,type);

//這裡可以控制參數。

dg.bind();//綁定表格

3:呈現的效果:

或者是:(樹形菜單預設是通過右鍵菜單控制操作)

4:表格常用內部對象:

1:dg.ToolArea:包括搜尋(Search)和工具條(ToolBar)。

2:dg.Search:搜尋區

3:dg.ToolBar:按鈕工具條

4:dg.PKColumn:主鍵列區

5:dg.HeaderMenu:列頭右鍵菜單

6:dg.ContextMenu:行資料的右鍵菜單

5:前端JS API編程樣本(結合通用對象通用事件,很容易知道在哪處理你要擴充的事件):

比如:你想在點擊查詢追加條件,那麼代碼就是:

dg.Search.BtnQuery.onBeforeExecute=function(para){在這裡追加條件。}

比如:你想隱藏重設按鈕,那麼代碼是:

dg.Search.BtnReset.isHidden=false;

比如:你想給查詢條件某個框賦值,那麼代碼是:

dg.Search.onAfterExecute=function(para){dg.Search.Items["列名"].val(123);};

也可以在頁面載入後處理:

dg.options={

onLoadSuccess:function(){dg.Search.Items["列名"].val(123);}

}

其它細節,在源碼Demo裡有介紹,這裡就點到為止了。

表單:Input相關的配置介紹:1:遠程驗證資料是否存在:
 <input name="UserName"  class=‘easyui-validatebox‘ data-options="validType:‘exists[UserName]‘"  />

效果:(架構內部隱式的條件參數包括:頁面傳遞的id,AR.Form.tableName)

2:InputDialog
<input name="F4" dialog="Demo_TestA" multiple="true" editable="true" />

單選效果:(第一次運行時,需要配置下表頭,隱藏不需要呈現的列,然後調一個搜尋方塊出來)

多選效果:

選擇後,是個下拉,還可以再小操作:

3:關於下拉框的具體配置,在Demo裡有詳細,所以不詳說,只上一張圖:

配置表頭的配置規則(即由viewname變名的Rules欄位)

效果:

本配置用於控制搜尋區,目前支援$1和$2配置,規則為:

$1:{}處理非下拉:

如果是日期或資料,預設變成區間查詢(如中的F4欄位配置),即預設clone:true,樣本配置:

$1:{title:"my title",width:200,clone:false}

$2:{} 處理下拉:

可設按鈕寬度,是否多選,是否選擇,是否呈現請選擇,是否選擇時引發查詢,樣本配置:

$2:{width:200,height:30,isQuery:false,mutiple:true,defaultitem:false}

AR.Utility.Ajax:一次請求多個方法,返回結果合集:

架構裡的範例程式碼:

 $Core.Utility.Ajax.post("GetInitConfig,GetKeyValueConfig", null, null, null, null, function (result) {        $Core.Global.Variable = result.GetInitConfig;        $Core.Global.Variable.isLoadCompleted = true;        $Core.Global.Config = result.GetKeyValueConfig;    });

結果集按方法組合成Json返回。

其它:參考架構Demo,或/Web/SysAdmin/系統系統功能的用法:

總結:

1:本版本親自操刀前端API(之前版本的前端是交另一個同事編寫)。

由於操刀前端,最近每天都折騰到深夜3-4點:

2:提升了效能(之前的同步導致介面1-2秒空白的卡,速度體驗感不好)。

3:提升了安全性(之前版本有一定的許可權安全問題)。

4:增強前端使用體驗。

ASP.NET Aries 3.0發布(附帶通用API設計及基本教程介紹)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.