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

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

asp.net webform 打造私人后臺管理系統(附源碼)

2019-11-17 01:41:35
字體:
來源:轉載
供稿:網友

asp.net webform 打造私人后臺管理系統(附源碼

系統簡介 

 不少人讓我做公司的網站,要求不多,但是需要有一個后臺系統,所以就有了開發的動力。也想做個系統自己學習一下,反正平時也不知道干啥。

 本系統采用的是asp.net webform+ado.net,也許現在用的很少了,但是的確是簡單粗暴,還是很方便的。這個后臺系統是我一個人制作,從布局,寫類庫到數據庫設計,總算有一個算是我私人的系統了。雖然比較簡單,很多地方設計不到位,但是既然開始了,就不能中斷了,我還是堅持把這個系統做完了。后面我自己開發準備使用asp.net mvc+EF。webform只是一段經歷,我覺得這段經歷很重要,從易到難,一步一個腳印。

  去年就一直在工作,一直在進行一些學習和準備,中間也進行過一些大改動,如改為Ajax+ashx,改權限設計等。

系統UI

感覺UI要做的好看很麻煩,反正整的覺得不惡心就可以了,下面是登錄頁面

主要頁面

工程介紹

1:xsFramework.Function 里面有生成驗證碼等一些輔助方法,目前方法比較少

2:xsFramework.SqlServer 數據庫操作類,具體介紹可以看剛整了一個數據庫操作類,但是可以用嗎

  數據庫操作例子,還算是比較簡單的,但是sql這樣是不是很那個...

        /// <summary>        /// 新增招聘        /// </summary>        /// <returns></returns>        public bool AddHire(DirModel dml)        {            xsSqlParameter sqlpara = new xsSqlParameter();            sqlpara.AddSqlParameter(dml);            sqlpara.SqlConnectString = GlabalString.DBString;            sqlpara.SQL = @"insert into [dbo].[xs_hire]([hire_id],[hire_name],[hire_count],[hire_place],[hire_remark])                            values (@hire_id ,@hire_name,@hire_count,@hire_place,@hire_remark)";            SqlHelper.Execute(sqlpara);            return true;        }

3:xsFramework.UserControl 控件庫,目前只有一個分頁控件和其輔助方法,具體實現可以看asp.net 分頁-自己寫分頁控件

前臺直接拖過去就可以使用,后臺用控件庫里面的類進行分頁

<cc1:xsPageControl ID="xsPage" runat="server"OnPageChanged="xsPage_PageChanged">            </cc1:xsPageControl>
        PRotected void xsPage_PageChanged(object sender, xsFramework.UserControl.Pager.PageChangedEventArgs e)        {            PagerParameter pagepara = new PagerParameter();            pagepara.DbConn = GlabalString.DBString;            pagepara.XsPager = xsPage;            pagepara.Sql = pageLogic.QueryNews(ddlNewType.SelectedValue,txtNewName.Text.Trim());            pagepara.OrderBy = "new_id";            DataTable dt = xsPageHelper.BindPager(pagepara, e);            Nodata.Visible = false;            if (dt.Rows.Count == 0) Nodata.Visible = true;            rptNews.DataSource = dt;            rptNews.DataBind();        }
        /// <summary>        /// 根據頁碼查詢新聞        /// </summary>        /// <returns></returns>        public string QueryNews(string strType,string strName)        {            string sql = @"select new_id,new_title,                            dbo.f_ConvertDate(a.create_time) create_time, b.user_name from xs_new a                            left join xs_users b on b.user_no=a.create_user where 1=1 ";            if (!string.IsNullOrEmpty(strType)) sql += " and a.new_type_id='" + strType + "'";            if (!string.IsNullOrEmpty(strName)) sql += " and a.new_title like '%" + strName + "%'";            return sql;        }

4:xsFramework.Web 頁面輔助庫,繼承自page,進行頁面的權限設定

系統權限

新增群組,群組設定功能,用戶設定群組,取得用戶某個功能的權限,可參考系統權限之簡單設計

1:查詢群組,index.aspx頁面進入時根據登錄者查詢出需要的群組,進行菜單顯示

if(select MAX(group_id) from xs_group_user where user_no=@user_no)='G001' begin select f.function_id,f.function_brother_id,f.function_parent_id,f.function_level,f.function_name,f.function_url,f.function_sort, f.function_action group_action from xs_function f where f.function_inmenu=1 end else begin select f.function_id,f.function_brother_id,f.function_parent_id,f.function_level,f.function_name,f.function_url,f.function_sort,gf.group_action from [xs_group_user] gu inner join [xs_group_function] gf on gf.group_id=gu.group_id inner join xs_function f on f.function_id=gf.function_id and f.function_inmenu=1 where gu.user_no=@user_no end

2:頁面繼承xsFramework.Web 中的AuthWebPage類,自動去判斷權限和訪問設定。

        protected override void OnLoad(EventArgs e)        {            //判斷session是否存在            if (LoginUser == null)            {                NotLogin();                return;// 不受postback下面的影響            }            else            {                string thisUrl = Request.RawUrl.Trim().Split('?')[0].ToLower();                if ("/index.aspx".Equals(thisUrl))                {                    _actions = "01";//如果有登錄首頁默認有查詢權限                }                var functions = LoginUser.Functions.Where(f => f.FunctionUrl.ToLower().Equals(thisUrl));                if (functions.Count() != 0)                {                    _actions = functions.First().FunctionActions;                }                if (_actions.Length == 0)                {                    Notaccess();//not access                    return;                }                else                {                    SetAction();// access                }            }            base.OnLoad(e);        }

3:如果一個頁面有新增權限,代碼為02,那么設置需要的html元素actionid為02,權限類會自動對其進行顯示和隱藏

  <asp:Button ID="btnSave" runat="server" Text="新增" CSSClass="button"             ValidationGroup="Save" onclick="btnSave_Click" actionid="02" />

結尾+源代碼(Download)

本想寫幾篇博客進行介紹,但是感覺有點浪費時間,所以簡單的說了一下,我覺得有源代碼這些都不是問題了。請珍惜我的勞動成果,希望看到大家的批評和建議。本系統對初學者可能幫助比較大,高手們可以直接跳過了,應為我覺得我就是菜鳥...

DB是sql server 導出的,自己進行建立,publish可以直接部署到IIS,source是源代碼用的是vs2012,vs2010要運行可以直接新建一個工程拷過去。最后別忘了改變DB鏈接。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大港区| 巴里| 台北市| 利辛县| 临夏市| 拉萨市| 崇阳县| 扬州市| 蒙自县| 滨州市| 隆子县| 尚志市| 府谷县| 大化| 吐鲁番市| 贵南县| 江永县| 澄江县| 灵宝市| 女性| 大理市| 桃江县| 南宫市| 贺州市| 商洛市| 灵台县| 侯马市| 名山县| 纳雍县| 龙山县| 梅州市| 南涧| 金塔县| 西华县| 涡阳县| 韶关市| 隆昌县| 攀枝花市| 嘉荫县| 黄浦区| 阜宁县|