首页 > 代码库 > 连载:(一)循序渐进,通过XML配置,实现通用于WinForm(.Net)、WebForm(Asp.Net+JQuery+EasyUI)表单、报表--前言

连载:(一)循序渐进,通过XML配置,实现通用于WinForm(.Net)、WebForm(Asp.Net+JQuery+EasyUI)表单、报表--前言

循序渐进,通过XML配置,实现通用于WinForm(.Net)、WebForm(Asp.Net+JQuery+EasyUI)表单、报表

--前言

作者:长江支流

 

        本连载,定义为《循序渐进,通过XML配置,实现通用于WinForm(.Net)、WebForm(Asp.Net+JQuery+EasyUI)表单、报表》,通过大量篇幅进行详细的代码及文字说明,实战.Net开发。欢迎转载,转载请注明出处,谢谢!

 

        十年前(),在CSDN发表了两篇有关.Net环境下的打印相关的博文,之后开发并共享开源了《金质打印通》,和很多程序员同行朋友们以及大学老师认识,非常激动!!!

开源:.NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现与应用(1)

开源:.NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现与应用(2)

 

        十年后的今天(2014年9月10日,教师节,祝天下老师节日快乐!),本人将再继前缘,连载博文,让程序员对重复的有规律可寻的程序功能“不程序”,让不懂程序但会SQL的DBA能写“程序”!!!

知识点

  • ADO.Net

  • XML

  • 序列化/反序列化

  • JQuery

  • EasyUI

  • 母版

 

软件环境

  •  Microsoft Visual Studio.Net 2008/2010/2012及更高版本

  • Oracle / SQLServer / MySQL / DB2 / Access等 

 

          本人一向认为,写程序写的是思想,并且如果掌握一点技术,就会把技术发挥到极处。所以,不要被知识点所吓倒,你一定要认为,你也可以的 :) ,特别是在校生,你肯定能做到。

         例如,XML文件,解析很容易,就是几句话的事情,然后重复,而最简单的解析器,直接用序列化反序列化,也是几行代码的事,当然里面有些技巧。再如,虽然用到了Jquery和EasyUI用于显示网页报表及查询过滤,以及数据的增删改查,如果读者接触过,请你一定要相信,我的Jquery和EasyUI水平绝对没有你高。因为我只要会一点,我就把尽量的灵活应用于实战。

 

          先来一点干货,即能让读者对自己有信息,也能让读者对作者有信心,绝对不写一很程序,即完成一个显示于EasyUI的网格报表。

 

          以上界面,只需要配置一个数据源的Select语句,在<Filter>指定要动态显示哪几个过滤字段,以及在<Fields>指定要显示的字段。只需要在浏览器中输入URL:http://网站/WebMIS.Web/UI/NormViewGrid.aspx?controller=xml描述的控制文件名,回车,搞定。

 

<?xml version="1.0" encoding="utf-8"?>
<WebMisControllerSerializer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Controller>
    <!--注意,Select中的字段是大写,所以Field中的Name节点,要与之一样-->
    <Select>
      Select a.ID As ID, a.DM As City,a.MC As Name,b.DM As Town ,MC,b.Memo
      From test_EntityAccessORM a
      Inner Join test_EntityAccessORM_Inner b
      On a.ID=b.CityID
    </Select>

    <Filter>
      <Field>
        <!--ID节点表示显示过滤输入控件ID或html元素的name属性,可以随便取一个唯一名称,建议统一命名为 filter_字段 -->
        <ID>filter_DM</ID>
        <!--Name节点表示Select中指定的字段名,重名必须加表前缀,用于条件查询,不区分大小写-->
        <Name>City</Name>
        <!--表示过滤条件的标签名-->
        <Title>城市代码</Title>
        <!--不写默认可见,设置false,可以传隐性条件参数-->
        <Visible>true</Visible>
        <!--表示数据类型,例如日期,就可以直接显示日期控件-->
        <Type>String</Type>
        <!--查询条件是否允许为空及提示-->
        <Null>false</Null>
        <Nulltitle>查询代码不能为空,请输入!</Nulltitle>
      </Field>
      <Field>
        <ID>filter_XZDM</ID>
        <!--查询字段不区分大小写-->
        <Name>town</Name>
        <Title>乡镇代码</Title>
      </Field>
      <Field>
        <ID>filter_MC</ID>
        <Name>MC</Name>
        <Title>名称</Title>
      </Field>
    </Filter>

    
    <Fields>
      <Field>
        <ID>ID</ID>
        <Name>ID</Name>
        <Title>标识ID</Title>
        <Align>right</Align>
        <Width>20</Width>
      </Field>
      <Field>
        <!--在查询报表而非表单时,如果不指定Name,取ID节点,大小写要与Select中一致-->
        <ID>City</ID>
        <Title>城市代码</Title>
        <Width>20</Width>
      </Field>
      <Field>
        <ID>MC</ID>
        <Title>城市名称</Title>
        <Width>20</Width>
      </Field>
      <Field>
        <ID>Town</ID>
        <Title>乡镇代码</Title>
        <Width>20</Width>
      </Field>
      <Field>
        <ID>Memo</ID>
        <Title>乡镇描述</Title>
        <Width>20</Width>
      </Field>
    </Fields>
  </Controller>
</WebMisControllerSerializer>
 

 在本连接下一章节,将说明实现原理,之后给出C#实现XML配置文件相关类,并给出源代码。

 

声明:本文版权为长江支流周方勇所有,如需转载,请保留完整的内容及出处。 

作者:长江支流flygoldfish@163.com微信:winxin8001234567

连载:(一)循序渐进,通过XML配置,实现通用于WinForm(.Net)、WebForm(Asp.Net+JQuery+EasyUI)表单、报表--前言