开发者社区> 泡泡浅眠> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

MapXtreme 2005 学习心得 了解新建MapXtreme项目结构(二)

简介:
+关注继续查看

一:新建示例 

首先,打开VS2005,新建网站,选择MapXtreme 6.7.1 Web Application

 

救命网站目录关键结构如下:

1:App_Code文件夹

有一个自定义的AppStateManager.cs类,继承自StateManager,主要是实现自定义的地图保存与还原,地图都存在Session中的,而且还是序列化成二进制存进去的

 

2:MapXtremeWebResources文件夹

复制代码
主要有几个关键的js,比如:

Interaction.js,交互用的js,比如是实现点击,双击,还是鼠标移动,还是画圈之类的.

Command.js,发送命令用的,比如是GetMap,请求一个地图,还是ZoomOut放大地图,或是ZoomIn缩小地图

Tool.js,就是界面上拉的那些控件工具用的,比如点击一个控件,才能引发相应的点击,并发送命令
复制代码

 

3:Global.asax

主要是一些地图出错后的处理

 

4:MapForm.aspx

主要的示例界面,里面拖了一个地图显示控件,和一些工具控件在里面

后台有几句代码,主要是用于访问时,初始化状态管理,并还原地图显示;退出时,就保存地图当前的状态

 

5:Web.Config:相关的地图配置

<add key="MapInfo.Engine.Session.Pooled" value="true" />

说明:是否开启Session池,一般都开了

 

复制代码
<add key="MapInfo.Engine.Session.State" value="Manual" />

有两个选项HttpSessionState和Manual

HttpSessionState时,系统自动管理地图的保存

Manual时,手动来决定是否保存用户状态了。就像页面退出时,调了个方法,来手动保存地图状态
复制代码

 

复制代码
ExpandedBlockStart.gif
<add key="MapInfo.Engine.Session.Workspace" value="C:\Program Files\MapInfo\MapXtreme\6.7.1\Samples\Data\World.mws;c:\Program Files (x86)\MapInfo\MapXtreme\6.7.1\Samples\Data\World.mws" />

地图的工作空间,可以有多个,用“,”号分隔。有一个MapFactory[索引]来取相应的地图

一般都是通过地图别名来取,很奇怪的我这里就是用别名取不到,只能取MapFactory[0]即第一个

所以一般工作空间就一个了

可以参考自C:\Program Files\MapInfo\MapXtreme\6.7.1\Documentation\PDF\MapXtreme2005_DevGuide.pdf中的文档第六章中的A Detailed Look at Manual State Management下的Application Settings即关于webconfig的说明
复制代码

 

<assemblies>程序集</assemblies>

没啥说的,copy就行

 

<httpHandlers><httpModules>

处理请求用的

 

复制代码
ExpandedBlockStart.gif
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20" />

这个就是Sesstion是保存到数据库中的了,和以往的InProc不一样了

所以相关的地方就是当你要用到Session的时候,存的东西必即是可序列化的,不然就报错了

比如HttpContext.Session[实体类],如果实体类不是可序列化的,就报错了
复制代码

 

OK,就先介绍到这里了...

版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:

http://www.cnblogs.com/cyq1162/archive/2009/11/02/1594404.html

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
+关注
2246
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载