• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > 利用ASP.NET MVC+EasyUI+SqlServer搭建企业开发框架

利用ASP.NET MVC+EasyUI+SqlServer搭建企业开发框架

作者:钢鬃の野猪人 字体:[增加 减小] 来源:互联网 时间:2017-05-11

钢鬃の野猪人通过本文主要向大家介绍了easyui asp.net mvc,asp net mvc,asp net mvc 4,asp net mvc 5,pro asp net mvc 4等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

我们要搭建的框架是企业级开发框架,适用用企业管理信息系统的开发,如:OA、HR等

1、框架名称:sampleFrame。

2、搭建原则:最少知识原则。

3、先定义一个简单的编码规范:除类名和接口名外,其余首字母小写。

4、准备开发环境:vs2010及以上(mvc4)、sqlserver、jquery2.0和easyui1.4.5

首先来看一下列表页面的效果图:

我们期望简洁带前台代码,如下:

<table id="dataGrid" class="easyui-datagrid" url="getList" toolbar="#toolbar">
 <thead>
 <tr>
  <th field="customerId" sortable="true" data-options="sortable:true" width="50">
  customerId
  </th>
  <th field="companyName" data-options="sortable:true" width="50">
  companyName
  </th>
  <th field="phone" width="50">
  phone
  </th>
  <th field="address" width="50">
  address
  </th>
 </tr>
 </thead>
</table>
<div id="toolbar">
 <div>
 <a class="easyui-linkbutton" iconcls="icon-add" onclick="add();">添加</a>
 <a class="easyui-linkbutton" iconcls="icon-edit" onclick="edit();">修改</a>
 <a class="easyui-linkbutton" iconcls="icon-remove" onclick="del();">删除</a>
 </div>
 <div>
 <input id="queryBox" class="easyui-textbox" buttonicon="icon-search" style="width: 200px;"
  data-options="onClickButton:function(){loadList(loadListSettings);}" />
 <a class="easyui-linkbutton" iconcls="icon-find" onclick="showQueryWindow();">
  详细查询</a>
 </div>
</div>
<script type="text/javascript">
 var loadListSettings = { searchFields: "customerId,companyName", prompt: "请输入客户Id或公司名称" };
</script>
<script type="text/javascript">
 pageInit(); 
</script>
</div>

为了这样简洁的前台,我们需要准备:

1、通用的布局模板_Layout.cshtml。base.css、base.js、defaultSettings.js、tool.js和private.js见后面

<!doctype html>
<html>
<head>
 <meta charset="utf-8" />
 <meta name="viewport" content="width=device-width" />
 <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
 <link href='/webResource/easyui/themes/default/easyui.css' rel='stylesheet' type='text/css' />
 <link href='/webResource/easyui/themes/icon.css' rel='stylesheet' type='text/css' />
 <link href='/webResource/base.css' rel='stylesheet' type='text/css' />
 <script src="/webResource/jquery/jquery.min.js" type="text/javascript"></script>
 <script src="/webResource/jquery/json2.js" type="text/javascript"></script>
 <script src="/webResource/easyui/jquery.easyui.min.js" type="text/javascript"></script>
 <script src="/webResource/easyui/locale/easyui-lang-zh_CN.js" type="text/javascript"></script>
 <script src="/webResource/tool.js" type="text/javascript"></script>
 <script src="/webResource/base.js" type="text/javascript"></script>
 <script src="/webResource/defaultSettings.js" type="text/javascript"></script>
 <script src="/webResource/private.js" type="text/javascript"></script>
 @RenderSection("scripts", required: false)
</head>
<body style="width: 100%; height: 100%; margin: 0px;">
 @RenderBody()
</body>
</html>
</div>

2、平台样式表base.css

.icon-find
{
 background: url('icons/find.png') no-repeat center center;
}

.datagrid-toolbar div:nth-child(1)
{
 float: left;
 width: 60%;
}
.datagrid-toolbar div:nth-child(2)
{
 margin-left: 60%;
 margin-right: 10px;
 width: auto;
 text-align: right;
}
</div>

3、基本方法脚本base.js

//取消自动渲染
$.parser.auto = false;

function pageInit() {

 //改变控件默认值
 $.fn.linkbutton.defaults.plain = true;
 $.fn.datagrid.defaults.fit = true;
 $.fn.datagrid.defaults.fitColumns = true;
 $.fn.datagrid.defaults.pagination = true;

 //显示ajax异常信息
 $(document).ajaxError(function (event, xhr, options, exc) {
 $.messager.alert({ title: '异步请求出错', msg: xhr.responseText, icon: "error" });
 });

 //地址栏传参允许中文
 jQuery(document).ajaxSend(function (event, request, options) {
 options.url = encodeURI(options.url);
 });

 $.parser.parse();
}

function loadList(settings) {
 var settings = $.extend(true, {}, loadListDefaultSettings, settings);

 if ($("#" + settings.gridId).length == 0)
 $.messager.alert({ title: "系统异常", msg: "DataGrid:" + settings.gridId + "不存在!", icon: "error" });

 var quickQueryData = [];
 if ($("#" + settings.queryBoxId).length > 0) {
 var val = $("#" + settings.queryBoxId).textbox("getValue");
 if (settings.searchFields && val) {
  var keys = settings.searchFields.split(',');
  for (i = 0, len = keys.length; i < len; i++) {
  quickQueryData.push({ field: keys[i], method: 'inLike', value: val });
  }
 }
 }

 var queryData = []; //详细查询预留 

 //加载数据
 $("#" + settings.gridId).datagrid("load", { quickQueryData: JSON.stringify(quickQueryData), queryData: JSON.stringify(queryData) });
}
</div>

4、基本脚本默认值defaultSettings.js

//查询参数设置
var loadListDefaultSettings = {
 url: "getList",
 gridId: "dataGrid",
 queryWindowId: "queryWindow",
 queryBoxId: "queryBox",
 searchFields: "Name",
 addQueryString: true,
 prompt: "请输入"
};



5、可能需要使用的工具方法tool.js

//判断是否包含地址栏参数
function hasQueryString(key, url) {
 if (typeof (url) == "undefined")
 url = window.location.search;

 var re = new RegExp("[?&]" + key + "=([^\\&]*)", "i");
 var a = re.exec(url);
 if (a == null) return false;
 return true;
}

//获取地址栏参数,如果参数不存在则返回空字符串
function getQueryString(key, url) {
 if (typeof (url) == "undefined")
 url = window.location.search;
 var re = new RegExp("[?&]" + key + "=([^\\&]*)", "i");
 var a = re.exec(url);
 if (a == null) return "";
 return a[1];
}

//将当前地址栏参数加入到url
function addUrlSearch(url) {
 var newParams = [];

 var paramKeys = window.location.search.replace('?', '').split('&');
 for (var i = 0; i < paramKeys.length; i++) {
 var key = paramKeys[i].split('=')[0];
 if (key == "" || key == "_t" || key == "_winid" || key == "isTab")
  continue;
 if (!hasQueryString(key, url))
  newParams.push(paramKeys[i]);
 }

 if (url.indexOf('?') >= 0)
 return url + "&" + newParams.join('&');
 else
 return url + "?" + newParams.join('&');
}

//url增加参数
function addSearch(url, key, value) {
 if (!hasQueryString(key, url)) {
 if (url.indexOf('?') >= 0)
  return url + "&" + key + "=" + value;
 else
  return url + "?" + key + "=" + value;
 }
 else
 return url;
}

//获取数组中对象的某个值,逗号分隔
function getValues(rows, attr) {
 var fieldValues = [];
 for (var i = 0; i < rows.length; i++) {
 if (rows[i] != null)
  fieldValues.push(rows[i][attr]);
 }
 return fieldValues.join(',');
}
</div>

6、可能需要使用的私有方法private.js,此文件包含的方法专供base.js使用,开发web时禁止使用

//替换掉Url中的{}参数
function replaceUrl(settings, pty) {
 if (!pty)
 pty = "url";
 if (!settings[pty])
 return;
 var str = settings[pty];
 var guid = "";
 var result = str.replace(/\{[0-9a-zA-Z_]*\}/g, function (e) {
 var key = e.substring(1, e.length - 1);

 if (key == "GUID") {
  if (!guid) {
  $.ajax({




 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 基于ASP.NET+EasyUI框架实现图片上传提交表单功能(js提交图片)
  • 基于ASP.NET+easyUI框架实现图片上传功能(判断格式+即时浏览 )
  • 基于ASP.NET+easyUI框架实现图片上传功能(表单)
  • 利用ASP.NET MVC+EasyUI+SqlServer搭建企业开发框架
  • ASP.NET中MVC传递数据的几种形式总结
  • ASP.NET MVC+EF框架+EasyUI实现权限管系列
  • Asp.net实现MVC处理文件的上传下载功能实例教程
  • ASP.NET MVC使用EasyUI的datagrid多选提交保存教程

相关文章

  • 2017-05-11c#.net全站防止SQL注入类的代码
  • 2017-05-11asp.net调用系统设置字体文本框的方法
  • 2017-05-11.Net中如何操作IIS的虚拟目录原理分析及实现方案
  • 2017-05-11Ibatis.net结合oracle批量删除实现代码
  • 2017-05-11asp.net中session的原理及应用详解
  • 2017-05-11“/”应用程序中的服务器错误
  • 2017-05-11.Net实现合并文件的具体方法
  • 2018-08-20在.NET Core类库中使用EF Core迁移数据库到SQL Server的方法
  • 2017-05-11服务端拼接json数据格式的正确写法(Append方式)
  • 2017-05-11ASP.net中md5加密码的方法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 在ASP.NET中用MSDNURLRewriting实现Url Rewriting
    • ASP.NET Core使用SkiaSharp实现验证码的示例代码
    • asp.net使用DataTable构造Json字符串的方法
    • 在ASP.NET中连接SQL Server的简单方法
    • asp.net 提高网站速度及如何利用缓存
    • ScriptManager.RegisterStartupScript()方法在ajax页面无效的解决方法
    • C#与.net高级编程 C#的多态介绍
    • asp.net 定时间点执行任务的简易解决办法
    • GridView高效分页和搜索功能的实现代码
    • asp.net core mvc实现伪静态功能

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有