今晚看了几篇项目应用的博客感受很深,晚上怎么都睡不着觉。于是乎,下面的博客诞生了 ^-^。

  我在想是不是要把我熟悉的Spring.NET框架与别的框架或技术结合起来。由于心血来潮,斗胆在园子里这么多大牛的面前班门弄斧了。长话短说,下面是我项目中用到的技术(图1):
1.JQuery的FlexiGrid插件
2.ASP.NET MVC
3.NVelocity 目前没有与MVC结合,只是用来简单的替换模板
4.WCF
5.LINQ
6.NHibernate

(图1)

这个项目目前版本是V1.0版本,我以后会定期更新这个项目。该项目包含了18个类库(图2)。我后续会更新这篇文章和代码,试图打造一套完美的解决方案。

(图2)

项目中主要用到的是FlexiGrid插件,该插件类似Ext的GridPanel。我把这个插件简单的修改了一下,只能更多的功能

flexigrid
//add cell
                             $('thead tr:first th', g.hDiv).each
                                (
                                     function() {

                                         var idx = $(this).attr('axis').substr(3);

                                         if (n.name == row.cell[idx].name) {

                                             td.align = this.align;

                                             //render(cell,row,data,index) 刘冬
                                             //cell:当前单元格的数据
                                             //row:当前行数据
                                             //data:所有数据
                                             //index:当前行号
                                             var col = n;
                                             var cell = row.cell[idx].value;
                                             if (col.render) {
                                                 td.innerHTML = col.render(cell, row, data, idx);
                                             } else {
                                                 td.innerHTML = cell;
                                             }
                                             $(tr).append(td);

                                             $(td).attr("value", cell);  //插入实际值(value)的属性
                                         }

                                     });

先秀一下FlexiGrid 的效果(图3)

(图3)

  还用到了jquery.UI和jquery.form插件(图4)

(图4)

  NVelocity ,我是用于导出Excel。首先写一个XML格式的模板,然后用其替换上面的内容,最后输入Excel文件(图5)

(图5)

  至于WCF,我放弃了Runtime.Serialization功能,而改用引用实体和契约(Contract)。

  V1.0版本中 FlexiGrid功能列表:
  1.数据的增删改
  2.显示/隐藏列
  3.页面中绑定列
  4.计算列(A列与B列的计算),小计,合计
  5.导出Excel
  6.设置分页数量

  扩增FlexiGrid API
  1.在colModel的配置中增加render方法,其中有4个参数
  cell:单元格焦点的数据, row:该行数据, data:所有数据, index:行号。
  通过这些参数我们可以实现计算列、小计、合计、序号等功能。§
  例如:render: function(cell, row, data, index) {
                return cell ? "男" : "女" ;
            }

  2.在获取当前行中数据的函数$('.trSelected td:nth-child(1)', grid)中,参数value属性。通过value可以获取当前单元格的值,而不是显示出的内容。
  如:显示"男" ,获取到true

  存在的Bug
  1.jquery.flexbox插件实现下拉框的动态选择
  2.FlexiGrid服务器端筛选(过滤)

FlexiGrid中文API手册

属性名

说明

类型

默认值

height

高度

数值

200

width

宽度

数值|字符

auto

striped

隔行变色

布尔

true

novstripe

显示条纹

布尔

false

minwidth

列的最小宽度

数值

30

minheight

列的最小高度

数值

80

resizable

可拖动网格大小

布尔

true

url

Ajax请求地址

字符

false

method

请求方式(POST|GET)

字符

POST

dataType

数据类型(JSON|XML,建议使用JSON)

字符

'xml'

errormsg

错误提升信息

字符

Connection Error

usepager

使用分页

布尔

false

page

当前页码

数值

1

total

总行数

数值

1

useRp

显示分页下拉列表

布尔

true

rp

每页显示行数

数值

15

rpOptions

分页设置

数组

[10, 15, 20, 25, 40],

title

显示标题

布尔

false

pagestat

显示当前页和总页面的样式,{from}、{ to }、{ total }分别为开始数、结束数、总数

字符

Displaying {from} to {to} of {total} items

procmsg

正在处理的提示信息

字符

Processing, please wait ...'

query

搜索查询的条件

字符

空字符

qtype

搜索查询的列名

字符

空字符

nomsg

无结果的提示信息

字符

No items

hideOnSubmit

隐藏提交

布尔

true

autoload

自动加载

布尔

true

blockOpacity

透明度设置

数值

0.5

onToggleCol

当在行之间转换时

布尔

false

  FlexiGrid修改版下载

  代码下载

转载于:https://www.cnblogs.com/yunchun86/archive/2009/12/10/1621450.html

Spring.NET企业架构实践之 JQuery + FlexiGrid + ASP.NET MVC + NVelocity + WCF + LINQ + NHibernate 综合应用...相关推荐

  1. Spring.NET企业架构实践之 JQuery + FlexiGrid + ASP.NET MVC + NVelocity + WCF + LINQ + NHibernate 综合应用

    今晚看了几篇项目应用的博客感受很深,晚上怎么都睡不着觉.于是乎,下面的博客诞生了 ^-^. 我在想是不是要把我熟悉的Spring.NET框架与别的框架或技术结合起来.由于心血来潮,斗胆在园子里这么多大 ...

  2. Spring.NET企业架构实践之 Nhibernate + WCF + ASP.NET MVC + NVelocity 对PetShop4.0重构(三)——持久层...

    什么是持久层?先解释什么是持久,英文persistence,将内存中的数据固化,保持在物理储存设备中.然而在企业应用中,往往通过关系型数据库来完成这一过程.那么持久层的定义是:相对于三层架构中的表示层 ...

  3. 如何使用jQuery向asp.net Mvc传递复杂json数据

    jQuery提供的ajax方法能很方便的实现客户端与服务器的异步交互,在asp.net mvc 框架使用jQuery能很方便地异步获取提交数据,给用户提供更好的体验! 调用jQuery的ajax方法时 ...

  4. 关于jQuery在Asp.Net Mvc 框架下Ajax文件上传的实现

    1. 实现传统的网络文件上传解决方案 首先,我先实现一个传统的网络文件上传方案,建立一个web页面,我还需要一个<form>和两个<input>元素就能解决问题,如在Index ...

  5. ASP.NET Web API实践系列06, 在ASP.NET MVC 4 基础上增加使用ASP.NET WEB API

    本篇尝试在现有的ASP.NET MVC 4 项目上增加使用ASP.NET Web API. 新建项目,选择"ASP.NET MVC 4 Web应用程序". 选择"基本&q ...

  6. 企业架构(五)——联邦企业架构(FEA)实施指南

    文章目录 一.概述 二.效能改善生命周期 三.企业架构的开发和应用 1.架构级别 2.架构演进 (1)概述 (2)片段架构 ① 片段的识别和定义过程 ② 片段架构的开发和维护过程 四.企业架构过渡战略 ...

  7. 企业架构研究总结(3)——企业架构的发展历程

    学习任何一项理论,我认为最好的入门方式就是探究其历史根源以及发展进程,借此阐明该理论产生的真实原因,避免读者一开始陷入各种理论所共有的晦涩之漩涡而不能自拔,最终连为什么而学都理不清楚.学习企业架构和企 ...

  8. 「企业架构」企业架构概述

    企业架构(EA)是"一种定义良好的实践,用于执行企业分析.设计.规划和实现,在任何时候都使用一种全面的方法,以实现战略的成功开发和执行.企业架构应用架构原则和实践来指导组织完成执行其战略所必 ...

  9. ASP.NET MVC实践系列5-结合jQuery

    现在做web开发肯定都听说过jQuery,jQuery在ASP.NET MVC被支持的很好,而且据说vs2010中也会集成进去,所以使用ASP.NET MVC了解jQuery肯定有莫大的好处,所以这里 ...

最新文章

  1. 什么是Python?主要运用哪些方面?
  2. 【CVPR 2020】神经网络架构搜索(NAS)论文和代码汇总
  3. UITableView——reloadData与reloadSection性能比较
  4. 最强无监督行人重识别方法 Cluster Contrast ReID
  5. 图像技术在直播中怎么用
  6. CDH6.3.2添加Hue服务时,验证数据库连接报错 Unexpected error. Unable to verify database connection.
  7. Dijkstra算法求最短路径(java)
  8. 投资学习网课笔记(part7)--基金第七课
  9. Net Core下多种ORM框架特性及性能对比
  10. Spring中@Autowired和@Resource的区别
  11. CWE视图层级关系解析:节点关系查询
  12. 使用动态优先权的进程调度算法的模拟_我爱OS第12讲:系统调度
  13. java线程池服务ExecutorService
  14. 前端项目总结与分享(PPT整理)
  15. Excel 固定表头
  16. 使用OpenCV中的imread()内存报错问题
  17. linux环境vmd安装,Ubuntu下VMD安装
  18. ALEXA中国网站排名真相调查[内幕调查:出卖Alexa]
  19. Ubuntu18设置4K屏幕缩放125%
  20. 爬取6874条数据,告诉你数据分析师的薪资待遇~!

热门文章

  1. morphologyEx函数
  2. MATLAB 无约束一维极值问题
  3. html文件上传协议,HTTP 上传文件的协议格式
  4. Centos(阿里云) 安装python3.4以及pip3
  5. Java8 Map中新增的方法使用总结
  6. 安装nginx及依赖包
  7. 最长回文子串 hihocode 1032 hdu 3068
  8. win7卸载打印机驱动
  9. hdu 2191 多重背包
  10. jmeter中重要组件及其执行顺序