论文部分内容阅读
摘 要:随着GIS技术的发展以及信息化建设的不断推进,对地理信息的发布提出了更高的要求。本文提出了一种以LightSwitch为框架,百度地图API为地理信息展示平台的地理信息发布平台构建方法,可以快速建立一套集数据采集、数据管理、地理数据展示、属性数据统计分析的信息发布平台,实现简单、便于维护管理。本文还讨论了洪山区体育场馆信息发布平台的具体实现方案。
关键词:LightSwitch;百度地图API;地理信息发布平台
一、引言
随着我国信息化建设的不断推进,以及GIS技术的发展与普及,各单位的信息化建设也提升到了新的高度,从过去单一的属性数据入库管理,到现在多种形式的数据展示,地理信息服务技术日趋成熟,国家、省市级单位应用地理信息系统进行管理应用已非常普遍。[1]从技术角度来看,目前主流的地图服务如百度地图、高德地图等地图服务功能完善,市场认可度较高;从市场角度来看,各企事业单位对于手中的地理数据迫切需要通过地图形式进行表达,而非传统表格形式描述。
本文提出了一种基于微软LightSwitch开发框架以及百度地图API的地理信息数据发布平台,通过利用LightSwitch的数据服务接口以及百度地图丰富的地理表现形式,实现快速构建地理信息数据发布平台,从而满足各企事业单位对于数据采集、管理及地理信息的发布。
二、需求分析
随着电子政务的普及,各级单位对于电子信息发布需求也越发迫切,因此需要寻求一种旨在快速构建信息入库、信息管理、信息发布及查询的通用解决方案。并且随着地理信息服务的普及,对于地理信息的发布与展示的需求也越发强烈。综合以上需求分析,本系统应实现如下功能:
(1)数据管理。实现对于用户信息数据的管理,如数据采集、录入、编辑、查询等。
(2)地图数据显示。实现地图展示的一些基本功能如查询点聚簇显示、全景地图漫游等。
(3)数据统计分析。实现对地图数据点的热力分析、对于属性数据能够生成透视分析图表等。
(4)权限管理。实现对系统用户分级权限管理,不同权限用户对应系统不同功能以确保数据安全性。
(5)构建快速,维护简单。
三、系统设计
1.系统结构设计
本系统采用目前较为流行的四层架构。
(1)用户界面层:基于Internet,通过浏览器查询、显示指定用户信息、及业务组件提供的处理结果信息。
(2)业务逻辑层:包括各种业务组件的功能模块,及负责功能模块之间的协作、数据交换等功能,以实现完整业务流程。
(3)数据接口层:封装对数据库的访问功能,使业务层与具体数据库平台无关。
(4)数据层:用于在SQLServer数据库存储专题数据。
2.数据库设计
体育场馆信息涉及到空间数据和专题属性数据。根据各类数据的特点及其相关性,主要设计了场馆、场地类别、所属街道、场地基本信息、场地运营情况、场馆照片、场地归属等数据表。涉及空间位置信息的数据以经纬度表示,并将空间信息与场馆进行关联,以便开展空间定位和相应的查询。[2]
四、系统实现
1.技术平台简介
(1)LightSwitch
Microsoft Visual Studio LightSwitch 是一种开发环境,旨在简化并缩短业务应用程序和数据服务的开发过程。LightSwitch 简化了以数据为中心的桌面及云业务应用程序的开发,使用户致力于业务逻辑处理[3]。
(2)百度地图API
百度地图JavaScript API是一套由JavaScript语言编写的应用程序接口,可在网站中构建功能丰富、交互性强的地图应用。百度地图还提供了强大的地图数据和全景数据支持,可以为用户提供更好的数据浏览体验。
2.系统实现原理
本方法创新性的提出将微软的LightSwitch快速开发框架与百度地图相结合,利用LightSwitch良好的数据封装特性,以及百度地图API在地图数据和功能上的强大支持,实现地理信息数据在线发布平台的快速构建。
具体开发路线可以分为以下几个主要阶段:
①利用LightSwitch平台搭建整体框架。在VS2013中创建好LightSwitch项目后,分别创建好“桌面项目”和“网页项目”;
②在“网页项目”中,自定义编写网页显示界面来替换掉LightSwitch默认的“网页项目”界面;
③利用jQuery EasyUI搭建网页界面,同时在页面中调用百度地图API生成地图;
④添加用户权限系统,根据不同的用户权限动态生成不同的页面,保证数据的安全。
3.系统实现关键技术讨论
(1)使用自定义网页界面
在解决方案中添加HTML项目并需要添加完成屏幕后,系统会根据所提供的数据表自动生成窗体设计界面,将数据展示控件由“行布局”替换为“自定义控件”,系统即可根据用户自定义的HTML界面进行显示。LightSwitch提供了element和contentItem两个接口,其中element用来接受自定义的HTML界面,用户只需要将自己设计好的页面内容附加到element上即可实现自定义界面;contentItem为LightSwitch数据接口,实现对数据库中的数据进行访问。
(2)使用RIA技术提升系统查询效率
随着系统中数据的不断增长,系统的查询效率会不断降低,此时可以通过使用WCF RIA服务。
WCF RIA是用来简化n层富互联网应用程序开发的服务,通过使用RIA服务,创建数据中间表,在服务器端重新组织用户所需的数据。通过创建RIA服务,用户可以将多个数据表进行整合、连接,使用RIA服务可以大大提高LightSwitch应用程序的执行效率。
在本系统中,使用RIA服务在Server端重新组织数据,构建“场馆”和“运营状况”的数据表,用以提供web端数据浏览,经测试使用RIA服务后,查询2000条数据时间由原来的40秒缩短至3秒,系统查询效率提升显著。
(3)权限系统实现
在信息平台中,数据安全是重中之重,本系统采用权限机制来确保系统安全。通过权限的验证,系统可以识别用户,一旦用户通过验证,就可以根据用户所具有的权限来设定其所能查看的屏幕,所能执行的功能。LightSwitch提供了一套完整的权限系统,但由于重写了LightSwitch默认的HTML页面,因此在web端无法使用其本身的访问控制系统。这里通过在页面中自定义一套权限系统来实现控制用户访问HTML页面的功能。
首先在web客户端获取当前系统用户所具备的权限。通过ServerApplicationContext API在服务器端获取当前系统用户权限等数据后,即可在web端请求到当前系统用户所具备的权限。其次在构建HTML页面过程中使用动态构建技术,构建过程中,结合用户权限生成相应的HTML元素,从而实现web页面端按权限浏览功能。
五、结语
本文以洪山区体育场馆信息发布平台为例,介绍了LightSwitch结合百度地图API快速开发地理信息发布平台的方法与其中一些关键技术。在平台实际运行过程中,具备维护简单,使用方便等特点。在网页项目中系统查询效率通过使用RIA技术有明显提升,达到用户对于性能的要求。
参考文献:
[1]杜传明. 百度地图API在小型地理信息系统中的应用[J]. 测绘与空间地理信息,2011,34(2):152-154.
[2] 张倩,靳云通,罗勇,张鸿吉. 基于百度地图API的农特产品地理信息系统设计与实现[J]. 安徽农业科学.
[3] Beth Massi. Advanced Programming Made Easy With Visual Studio LightSwitch [J]. MSDN Magazine.2011.
作者简介:李晓飞(1989—)男,湖北襄阳人,地图学与地理信息系统专业
关键词:LightSwitch;百度地图API;地理信息发布平台
一、引言
随着我国信息化建设的不断推进,以及GIS技术的发展与普及,各单位的信息化建设也提升到了新的高度,从过去单一的属性数据入库管理,到现在多种形式的数据展示,地理信息服务技术日趋成熟,国家、省市级单位应用地理信息系统进行管理应用已非常普遍。[1]从技术角度来看,目前主流的地图服务如百度地图、高德地图等地图服务功能完善,市场认可度较高;从市场角度来看,各企事业单位对于手中的地理数据迫切需要通过地图形式进行表达,而非传统表格形式描述。
本文提出了一种基于微软LightSwitch开发框架以及百度地图API的地理信息数据发布平台,通过利用LightSwitch的数据服务接口以及百度地图丰富的地理表现形式,实现快速构建地理信息数据发布平台,从而满足各企事业单位对于数据采集、管理及地理信息的发布。
二、需求分析
随着电子政务的普及,各级单位对于电子信息发布需求也越发迫切,因此需要寻求一种旨在快速构建信息入库、信息管理、信息发布及查询的通用解决方案。并且随着地理信息服务的普及,对于地理信息的发布与展示的需求也越发强烈。综合以上需求分析,本系统应实现如下功能:
(1)数据管理。实现对于用户信息数据的管理,如数据采集、录入、编辑、查询等。
(2)地图数据显示。实现地图展示的一些基本功能如查询点聚簇显示、全景地图漫游等。
(3)数据统计分析。实现对地图数据点的热力分析、对于属性数据能够生成透视分析图表等。
(4)权限管理。实现对系统用户分级权限管理,不同权限用户对应系统不同功能以确保数据安全性。
(5)构建快速,维护简单。
三、系统设计
1.系统结构设计
本系统采用目前较为流行的四层架构。
(1)用户界面层:基于Internet,通过浏览器查询、显示指定用户信息、及业务组件提供的处理结果信息。
(2)业务逻辑层:包括各种业务组件的功能模块,及负责功能模块之间的协作、数据交换等功能,以实现完整业务流程。
(3)数据接口层:封装对数据库的访问功能,使业务层与具体数据库平台无关。
(4)数据层:用于在SQLServer数据库存储专题数据。
2.数据库设计
体育场馆信息涉及到空间数据和专题属性数据。根据各类数据的特点及其相关性,主要设计了场馆、场地类别、所属街道、场地基本信息、场地运营情况、场馆照片、场地归属等数据表。涉及空间位置信息的数据以经纬度表示,并将空间信息与场馆进行关联,以便开展空间定位和相应的查询。[2]
四、系统实现
1.技术平台简介
(1)LightSwitch
Microsoft Visual Studio LightSwitch 是一种开发环境,旨在简化并缩短业务应用程序和数据服务的开发过程。LightSwitch 简化了以数据为中心的桌面及云业务应用程序的开发,使用户致力于业务逻辑处理[3]。
(2)百度地图API
百度地图JavaScript API是一套由JavaScript语言编写的应用程序接口,可在网站中构建功能丰富、交互性强的地图应用。百度地图还提供了强大的地图数据和全景数据支持,可以为用户提供更好的数据浏览体验。
2.系统实现原理
本方法创新性的提出将微软的LightSwitch快速开发框架与百度地图相结合,利用LightSwitch良好的数据封装特性,以及百度地图API在地图数据和功能上的强大支持,实现地理信息数据在线发布平台的快速构建。
具体开发路线可以分为以下几个主要阶段:
①利用LightSwitch平台搭建整体框架。在VS2013中创建好LightSwitch项目后,分别创建好“桌面项目”和“网页项目”;
②在“网页项目”中,自定义编写网页显示界面来替换掉LightSwitch默认的“网页项目”界面;
③利用jQuery EasyUI搭建网页界面,同时在页面中调用百度地图API生成地图;
④添加用户权限系统,根据不同的用户权限动态生成不同的页面,保证数据的安全。
3.系统实现关键技术讨论
(1)使用自定义网页界面
在解决方案中添加HTML项目并需要添加完成屏幕后,系统会根据所提供的数据表自动生成窗体设计界面,将数据展示控件由“行布局”替换为“自定义控件”,系统即可根据用户自定义的HTML界面进行显示。LightSwitch提供了element和contentItem两个接口,其中element用来接受自定义的HTML界面,用户只需要将自己设计好的页面内容附加到element上即可实现自定义界面;contentItem为LightSwitch数据接口,实现对数据库中的数据进行访问。
(2)使用RIA技术提升系统查询效率
随着系统中数据的不断增长,系统的查询效率会不断降低,此时可以通过使用WCF RIA服务。
WCF RIA是用来简化n层富互联网应用程序开发的服务,通过使用RIA服务,创建数据中间表,在服务器端重新组织用户所需的数据。通过创建RIA服务,用户可以将多个数据表进行整合、连接,使用RIA服务可以大大提高LightSwitch应用程序的执行效率。
在本系统中,使用RIA服务在Server端重新组织数据,构建“场馆”和“运营状况”的数据表,用以提供web端数据浏览,经测试使用RIA服务后,查询2000条数据时间由原来的40秒缩短至3秒,系统查询效率提升显著。
(3)权限系统实现
在信息平台中,数据安全是重中之重,本系统采用权限机制来确保系统安全。通过权限的验证,系统可以识别用户,一旦用户通过验证,就可以根据用户所具有的权限来设定其所能查看的屏幕,所能执行的功能。LightSwitch提供了一套完整的权限系统,但由于重写了LightSwitch默认的HTML页面,因此在web端无法使用其本身的访问控制系统。这里通过在页面中自定义一套权限系统来实现控制用户访问HTML页面的功能。
首先在web客户端获取当前系统用户所具备的权限。通过ServerApplicationContext API在服务器端获取当前系统用户权限等数据后,即可在web端请求到当前系统用户所具备的权限。其次在构建HTML页面过程中使用动态构建技术,构建过程中,结合用户权限生成相应的HTML元素,从而实现web页面端按权限浏览功能。
五、结语
本文以洪山区体育场馆信息发布平台为例,介绍了LightSwitch结合百度地图API快速开发地理信息发布平台的方法与其中一些关键技术。在平台实际运行过程中,具备维护简单,使用方便等特点。在网页项目中系统查询效率通过使用RIA技术有明显提升,达到用户对于性能的要求。
参考文献:
[1]杜传明. 百度地图API在小型地理信息系统中的应用[J]. 测绘与空间地理信息,2011,34(2):152-154.
[2] 张倩,靳云通,罗勇,张鸿吉. 基于百度地图API的农特产品地理信息系统设计与实现[J]. 安徽农业科学.
[3] Beth Massi. Advanced Programming Made Easy With Visual Studio LightSwitch [J]. MSDN Magazine.2011.
作者简介:李晓飞(1989—)男,湖北襄阳人,地图学与地理信息系统专业