解决wince与主机webservice的连接和访问问题?
1、安装IIS、并注册,参考百度经验:http://jingyan.baidu.com/article/9f7e7ec0547ecf6f2815548f.html
64位的windows操作系统上运行32位asp.net web应用程序的时候,出现试图加载格式不正确的程序的解决方法这个是64位应用32位产生的问题。相信大家搜索的时候很多都是建议改把项目的AnyCPU改成X86,可是很不幸我的改不了。 终于搜索了半天后发现,IIS里解决才是根本办法: 1.生成时选择AnyCPU。 2.在IIS配置里面启用32位应用程序。 其中启用32位应用程序的方法如图:
我们发布WebService的方法有两种,一种是通过VS可视化发布,还有一种是通过IIS配置发布。 1)我们右键单击WebService项目,选择发布,如下图:
? 路径我选择的是发布网站默认的路径,就是C:/inetpub/wwwroot/,然后我给它一个文件夹Web 点击确定后,状态栏给出发布结果信息。 2)如果上一步不成功,我们必须手动发布,首先检查你的IIS安装没有,控制面板->所有控制面板项->管理工具,如果没有IIS的话需要添加,这里不再赘述,百度上有方法。 将这几个文件放入一个文件夹中,记录物理路径(例如E:C#webpublishWebService1)准备发布:
打开IIS,右键单击网站,选择添加网站。 网站名称任意(test2) 物理路径选择刚才的文件夹E:C#webpublishWebService1 注意关键来了,这一步关系着wince能够访问主机发布的webservice,IP地址选择主机的IP地址(因为IP地址10.25.71.57我之前已经给test2了,所以test3我分配IP地址为169.254.2.2,同一个IP地址不能同时用于两个同样目录的网站),并分配端口号。 点击链接,选择特定用户,设置为你Window登录名和密码,如图:
设置完毕后可以测试设置,第二项windows授权可以通过。 然后为IIS虚拟目录创建单独的应用程序,方法是右键虚拟目录点击“添加应用程序...”,目录与刚才的虚拟目录物理路径要一致。 3、检查webservice是否发布成功 如果浏览器打开的网址是http://169.254.2.2/test3/Service1.asmx红色方框内的IP地址与之前选择的主机IP地址一样(无端口号),那么网站已经发布成功,之后可以用wince访问了。
4、wince上访问webservice 建立一个智能设备应用程序,添加Web引用,我这里用的是静态引用,没有用动态引用的原因是,试过网上的动态生成WebService引用的代码,效率远比静态引用要低很多,考虑终端设备资源的有限性,还是用的静态引用。建立好项目后在界面上添加一个button和datagrid控件,添加代码: 连接好终端设备, 测试 点击按钮,几秒后DataGrid表格正确显示数据,OK,说明WinCE已经能够正确调用Web Service了。如果不能正确调用,检察WebService 发布 与Web引用是否正确,数据库配置是否正确。(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |