jxmst.jpg (4526 bytes)

江西气象科技
JIANGXI METEOROLOGICAL SCIENCE&TECHNOLOGY
2004年 第27卷 第3期 No.32004

peri.GIF (2345 bytes)

 

 

浅谈用ASP.NET实现气象记录档案的网上查询

刘文英
(江西省环境预报中心,江西 南昌 330046)


  
摘 要: 介绍了用ASP.NET实现网上查询气象记录档案的主要技术要点,并给出了部分程序源代码,供ASP.NET爱好者及相关人员参考。
  
关键词: ASP.NET 气象记录 档案 查询
  
中图分类号:P409  文献标识码:B  文章编号:1007-9033(2004)03-0027-02


    在气象部门,目前不论从事科研开发,还是业务、服务工作,都需要使用气象资料。科技人员除了直接通过江西省气候资料查询系统获取常用的信息外,还可以直接到省气象档案馆查阅。对于广大气象科技人员来讲,省气象档案馆有没有需要的台站资料,以及该台站的资料项目情况、记录的起止时间等等,都是一个未知数。为方便和简化这一工作,可以借助微软的ASP.NET制作1个网上查询主页,用户通过IE浏览器,就可在远程实现对气象记录档案的检索,足不出户便能了解到相关信息。
1 查询系统实现的主要技术方法
1.1 初始化页面
    对档案种类、测站名称、起止年份进行赋初值。需注意的是在对DropDownList控件增加item时,要将档案代码、站号与档案名称及站名相对应加进去,以便查询。
1.2  操作配置文件
    因为不同种类的档案,有不同的测站,还可能有不同的起止年份,加上有的测站已撤销,还有的档案又可分为更详细的子档案等等,所以程序通过一些配置文件来实现相应控制。如根据选择的档案种类,对测站、年份作相应变化。这主要通过DropDownList1_SelectedIndexChanged子过程来实现。需注意的是在Page_Load子过程中,应加上not Ispostback()判断。否则每次进行不同的选择时,会执行页面的初始化操作。
1.3  建立查询
    对档案种类、是否有子档案、是否是撤销台站、起止年份等进行综合限制,得到所需的数据集合。连接数据库以及查询的代码大致如下:
    Dim conAuthors As OleDbConnection, strSelect As String
    Dim cmdSelect As OleDbCommand, dtrDhhe As OleDbDataReader
    conAuthors = New OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source='C:\Documents and Settings\Administrator\my documents\baobiao.mdb'" )
    strSelect = "Select * From dhhe Where type=" & "'" & DL1.selecteditem.value & "'"
    if dl4.enabled then: strSelect &= " and stat=" & "'" & DL4.selecteditem.value & "'"
    else: strSelect &= " and stat=" & "'" & DL3.selecteditem.value & "'"
    end if
    strSelect &= " and year>=" & "'" & DL5.selecteditem.text & "'"
    strSelect &= " and year<=" & "'" & DL6.selecteditem.text & "'"
    cmdSelect = New OleDbCommand( strSelect, conAuthors )
    conAuthors.Open()
1.4 显示数据
    用ASP.NET自带的Repeater控件,将检索出来的数据集进行绑定,即可显示查询结果。Repeater控件的设置代码如下:
    <asp:Repeater id="rptAuthors" Runat="Server">
    <HeaderTemplate>
    <table border="1" cellpadding="4"> <tr bgcolor="#d5f4f5"> <th>归档日期</th>
    </HeaderTemplate>
    <ItemTemplate> <tr>
    <td> <%# Container.DataItem( "date" ) %></td>
    </ItemTemplate>
    <FooterTemplate> </table> </FooterTemplate>
    </asp:Repeater>
    数据绑定代码如下:
    dtrdhhe = cmdSelect.ExecuteReader()
    rptAuthors.DataSource = dtrdhhe
    rptAuthors.DataBind()
1.5 美化页面
    可用PhotoShop制作1幅图片,放在网页的上方居中位置,表明网页的功能。在主页的右上角可增加1个日期和时间的标签,每次刷新页面时间自动更新。其实现只需在Page_Load过程中加入label9.text=datetime.now即可。
1.6 保护源代码
    为了对源代码进行保密,可以对整个页面进行编译。比如,将网页内容按特定要求编写并保存为MyPage.vb,用命令“vbc /t:library /r:system.dll,system.web.dll myPage.vb”编译,将生成的MyPage.dll拷贝到相应的/bin目录中,并建立1个文件ShowMyPage.aspx。其内容只需1句话:<%@ Page inherits="myPage" %>。用Web浏览器打开这个文件时,就会显示被编译的页面。
2 结语
    查询系统建立后,链接到省局内因网上,相关人员就可以在网上查到自己所需资料的情况,从而使气象记录档案目录真正实现全省共享。因此,系统的建成既减轻了档案管理人员的手工劳动,又可直接为全省各气象台站提供相应的服务,不仅提高了气象记录档案的管理水平,也有利于更大地发挥气象记录档案的作用。

参考文献

1 Stephen Walther . ASP.NET技术内幕[M]. 北京:机械工业出版社,2002.
2 高清和. 精通ASP.NET程序设计[M]. 北京:中国铁道出版社,2001.

_______________________________
收稿日期:2004年03月26日

作者简介:刘文英(1975—),男,助理工程师,主要从事农业气象工作。