欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

構建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后

系統(tǒng) 2235 0

不知不覺已經(jīng)過了13講,(本來還要講多一講是,數(shù)據(jù)驗證之自定義驗證,基于園友還是對權限這塊比較敢興趣,講不講驗證還是看大家的反映),我們應該對系統(tǒng)有一個小結。
首先這是一個團隊開發(fā)項目,基于接口編程,我們從EasyUI搭建系統(tǒng)的框架開始,開始了一個樣例程序對EasyUI的DataGrid進行了操作,并實現(xiàn)Unity的注入到容器,使程序
的性能大大提升,代碼質量上升,更佳利于單元測試,使用日志和異常堅固系統(tǒng)穩(wěn)定性等等。。。。


當然你應該覺得系統(tǒng)還有存在很多不足,我們應該動手來優(yōu)化一下。
下面我羅列了需要優(yōu)化的項目,如果你覺得還有優(yōu)化的,請?zhí)峤唬覍⒓尤胍院蟮奈恼轮腥?

  1. UI方面,我們的easyui window彈出窗體,是不是沒有居中,好丑啊;
  2. DataGrid雖然我在綁定時候寫入了根據(jù)第一次窗體的變化去適應框架,這時你點擊游覽器的縮小或者擴大按鈕,那么你的DataGrid變形了;
  3. JS我們在Details頁面引入了JS,我們是否應該把他嵌入到_Layout_----里面去?并進行捆綁?
  4. 我們DataGrid返回的日期格式是/Date(20130450000365)你看得懂嗎?
  5. 我們的BLL每次都要去實例化 DBContainer db = new DBContainer();重復操作,我們是不是應該寫一個BaseBLL基類類繼承
  6. 我們前端很多提示信息都一樣,是不是應該封裝起來,比如點擊:Details時沒有選擇提示的“請選擇要操作的記錄”
  7. 工具欄的增、刪、改按鈕一樣每次粘貼的代碼也不少,我們應該擴展Mvc的HtmlHelper的封裝,之后我們@html.就出來了多方便,以后還用于權限控制

優(yōu)化后的系統(tǒng)將可能做為最后一個發(fā)布源碼的版本, 如無必要以后不再提供源碼下載 ,但所講的內容中,將全部包含完整源碼,請你將完成的系統(tǒng)“珍藏”起來,因
為這是你的勞動成果

最后我們將接受一個更大的目標挑戰(zhàn),權限管理系統(tǒng)。我覺得這個是大家最關心的事情了,但是在此之前,我們將要補充一些知識。

  • MVC自帶的過濾器用法
  • MVC路由Rotun概念

權限系統(tǒng)講完了,我們講T4模板,導出報表和圖表, 文件上傳 ,系統(tǒng)設置等等補充..讓我們的系統(tǒng)拿出來就能當項目來用。
由于接下來的東西邏輯性和編碼都要比之前的復雜很多,所以更新可能會比以前慢。請大家耐心等待,謝謝園友的支持,無論多忙我都會不斷的更新

現(xiàn)在我們先來解決以上7個問題吧!

1.UI方面,我們的easyui window彈出窗體,是不是沒有居中,好丑啊;

Easyui 讓Window彈出居中
2.DataGrid雖然我在綁定時候寫入了根據(jù)第一次窗體的變化去適應框架,這時你點擊游覽器的縮小或者擴大按鈕,那么你的DataGrid變形了;

Easyui 讓DataGrid適應瀏覽器寬度
3.JS我們在Details頁面引入了JS,我們是否應該把他嵌入到_Layout_----里面去?并進行捆綁?

  我已經(jīng)進行壓縮了.源碼帶出.
4.我們DataGrid返回的日期格式是/Date(20130450000365)你看得懂嗎?

MVC解決Json DataGrid返回的日期格式是/Date(20130450000365)
5.我們的BLL每次都要去實例化 DBContainer db = new DBContainer();重復操作,我們是不是應該寫一個BaseBLL基類類繼承

  我已經(jīng)進行分離,源碼帶出.
6.我們前端很多提示信息都一樣,是不是應該封裝起來,比如點擊:Details時沒有選擇提示的“請選擇要操作的記錄”

  在App.Common加入以下類Suggestion

View Code

  在視圖中的使用

        $(
        
          "
        
        
          #btnDelete
        
        
          "
        
        
          ).click(function () {
            
        
        
          var
        
         row = $(
        
          '
        
        
          #List
        
        
          '
        
        ).datagrid(
        
          '
        
        
          getSelected
        
        
          '
        
        
          );
            
        
        
          if
        
         (row != 
        
          null
        
        
          ) {
                $.messager.confirm(
        
        
          '
        
        
          提示
        
        
          '
        
        , 
        
          '
        
        
          @Suggestion.YouWantToDeleteTheSelectedRecords
        
        
          '
        
        
          , function (r) {
                        
        
        
          if
        
        
           (r) {
                            $.post(
        
        
          "
        
        
          /SysSample/Delete?id=
        
        
          "
        
         +
        
           row.Id, function (data) {
                                
        
        
          if
        
         (data.type == 
        
          1
        
        
          )
                                    $(
        
        
          "
        
        
          #List
        
        
          "
        
        ).datagrid(
        
          '
        
        
          load
        
        
          '
        
        
          );
                                $.messageBox5s(
        
        
          '
        
        
          提示
        
        
          '
        
        
          , data.message);
                            }, 
        
        
          "
        
        
          json
        
        
          "
        
        
          );

                        }
                    });
                } 
        
        
          else
        
         { $.messageBox5s(
        
          '
        
        
          提示
        
        
          '
        
        , 
        
          '
        
        
          @Suggestion.PlaseChooseToOperatingRecords
        
        
          '
        
        
          ); }
            });
        
      

@Suggestion.PlaseChooseToOperatingRecords '

7.工具欄的增、刪、改按鈕一樣每次粘貼的代碼也不少,我們應該擴展Mvc的HtmlHelper的封裝,之后我們@html.就出來了多方便,以后還用于權限控制

  這個必須返回MvcHtmlString和在視圖中引入命名空間。在App.Admin的Core文件夾中新建類ExtendMvcHtml

  并加入以下代碼

          
            using
          
          
             System;

          
          
            using
          
          
             System.Collections.Generic;

          
          
            using
          
          
             System.Linq;

          
          
            using
          
          
             System.Text;

          
          
            using
          
          
             System.Web;

          
          
            using
          
          
             System.Web.Mvc;

          
          
            using
          
          
             App.Models.Sys;


          
          
            namespace
          
          
             App.Admin
{
    
          
          
            public
          
          
            static
          
          
            class
          
          
             ExtendMvcHtml
    {
    
        
          
          
            ///
          
          
            <summary>
          
          
            ///
          
          
             普通按鈕
        
          
          
            ///
          
          
            </summary>
          
          
            ///
          
          
            <param name="helper">
          
          
            htmlhelper
          
          
            </param>
          
          
            ///
          
          
            <param name="id">
          
          
            控件Id
          
          
            </param>
          
          
            ///
          
          
            <param name="icon">
          
          
            控件icon圖標class
          
          
            </param>
          
          
            ///
          
          
            <param name="text">
          
          
            控件的名稱
          
          
            </param>
          
          
            ///
          
          
            <param name="hr">
          
          
            分割線
          
          
            </param>
          
          
            ///
          
          
            <returns>
          
          
            html
          
          
            </returns>
          
          
            public
          
          
            static
          
           MvcHtmlString ToolButton(
          
            this
          
           HtmlHelper helper, 
          
            string
          
           id, 
          
            string
          
           icon, 
          
            string
          
           text, 
          
            bool
          
          
             hr)
        {

            StringBuilder sb 
          
          = 
          
            new
          
          
             StringBuilder();
            sb.AppendFormat(
          
          
            "
          
          
            <a id=\"{0}\" style=\"float: left;\" class=\"l-btn l-btn-plain\">
          
          
            "
          
          
            , id);
            sb.AppendFormat(
          
          
            "
          
          
            <span class=\"l-btn-left\"><span class=\"l-btn-text {0}\" style=\"padding-left: 20px;\">
          
          
            "
          
          
            , icon);
            sb.AppendFormat(
          
          
            "
          
          
            {0}</span></span></a>
          
          
            "
          
          
            , text);
            
          
          
            if
          
          
             (hr)
            {
                sb.Append(
          
          
            "
          
          
            <div class=\"datagrid-btn-separator\"></div>
          
          
            "
          
          
            );
            }
            
          
          
            return
          
          
            new
          
          
             MvcHtmlString(sb.ToString());

        }
    }
}
          
        

  并在視圖中使用它,使用例子!

        @Html.ToolButton(
        
          "
        
        
          btnQuery
        
        
          "
        
        , 
        
          "
        
        
          icon-search
        
        
          "
        
        ,
        
          "
        
        
          查詢
        
        
          "
        
        ,
        
          true
        
        
          )
@Html.ToolButton(
        
        
          "
        
        
          btnCreate
        
        
          "
        
        , 
        
          "
        
        
          icon-add
        
        
          "
        
        , 
        
          "
        
        
          新增
        
        
          "
        
        ,
        
          true
        
        
          )
@Html.ToolButton(
        
        
          "
        
        
          btnEdit
        
        
          "
        
        , 
        
          "
        
        
          icon-edit
        
        
          "
        
        , 
        
          "
        
        
          編輯
        
        
          "
        
        , 
        
          true
        
        
          )
@Html.ToolButton(
        
        
          "
        
        
          btnDetails
        
        
          "
        
        , 
        
          "
        
        
          icon-details
        
        
          "
        
        , 
        
          "
        
        
          詳細
        
        
          "
        
        , 
        
          true
        
        
          )
@Html.ToolButton(
        
        
          "
        
        
          btnDelete
        
        
          "
        
        , 
        
          "
        
        
          icon-remove
        
        
          "
        
        , 
        
          "
        
        
          刪除
        
        
          "
        
        , 
        
          true
        
        
          )
@Html.ToolButton(
        
        
          "
        
        
          btnExport
        
        
          "
        
        , 
        
          "
        
        
          icon-export
        
        
          "
        
        ,
        
          "
        
        
          導出
        
        
          "
        
        ,
        
          true
        
        )
      

迄今為止,我們7個問題已經(jīng)陸續(xù)改完了,由于可能是最后一次發(fā)布【源碼含數(shù)據(jù)庫,完整的增刪改查例子】,我想做一個不是很“人道”的事情

源碼我將發(fā)布到共享37509873

如果你想獲得一份源碼,希望大家來加入Asp.net高級討論群

作者: YmNets
出處: http://ymnets.cnblogs.com/
本文版權歸作者和博客園共有,歡迎轉載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。

構建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后臺管理系統(tǒng)(14)-系統(tǒng)小結


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产在线观看第一页 | 91中文在线观看 | 视频二区| 午夜亚洲 | 欧美一区二区三 | 极品一级片 | 四虎影在线永久免费四虎地址8848aa | 日韩精品 电影一区 亚洲 | 麻豆视频秘密入口 | 亚洲第一天堂 | jizz国产精品免费麻豆 | 亚洲免费播放 | 成人二区 | va日本 | 久久久www成人免费精品 | 初女破苞国语在线观看免费 | 成人午夜 | 久久久一区二区三区不卡 | 黄页成人免费网站 | 亚洲精品久久久久无码AV片软件 | 色视频在线观看 | 日本在线视| 日韩av电影免费看 | 噜噜噜噜精品视频在线观看 | 91高清视频在线 | 成人高清 | 久草新在线 | 午夜免费 | 国产午夜视频在线 | 精品久久久久一区 | 亚洲最大成人综合 | 三级网址在线播放 | 国内真实迷j下药在线观看 人人艹逼 | 亚洲免费福利 | 日韩精品 电影一区 亚洲 | 夜色成人网 | 久草热线 | jizjizjiz中国护士18 | 色综合久久伊人 | 亚洲视频区 | 九九av|