客户端:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Client.aspx.cs" Inherits="客户端.Client" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script src="script/jquery-1.9.1.js"></script>
<style type="text/css">
#btn {
cursor: pointer;
height:32px;
font-size:15px;
}
</style>
</head>
<body>
<form runat="server" id="from1">
时 间:&nbsp;
<asp:TextBox ID="time" runat="server"></asp:TextBox></br>
地 点:&nbsp;
<asp:TextBox ID="address" runat="server"></asp:TextBox></br>
污染物:&nbsp;<asp:TextBox ID="pollutant" runat="server"></asp:TextBox></br>
投放记录:<asp:TextBox ID="PutonRecord" runat="server"></asp:TextBox></br></br>
<asp:Button ID="btn" runat="server" Text="点击传递参数" OnClick="btn_Click" class="btn02"/>&nbsp;&nbsp;&nbsp;
返回的ID为:<asp:Label ID="Id" runat="server" Text=""></asp:Label>
</form>
</body>
</html>
<script type="text/javascript">
$('#PutonRecord').ready(function () {
$('#PutonRecord').css("width", "400px"),
$('#PutonRecord').css("height", "20px")
});
$('#time').ready(function () {
$('#time').css("width", "400px"),
$('#time').css("height", "20px")
});
$('#address').ready(function () {
$('#address').css("width", "400px"),
$('#address').css("height", "20px")
});
$('#pollutant').ready(function () {
$('#pollutant').css("width", "400px"),
$('#pollutant').css("height", "20px")
});
</script>

客户端后台:

protected void btn_Click(object sender, EventArgs e)
{
ServiceReference1.WebService1SoapClient c = new ServiceReference1.WebService1SoapClient();
string times = time.Text;
string addr = address.Text;
string pollu = pollutant.Text;
string putrecord = PutonRecord.Text;
int id = c.GetData(times, addr, pollu, putrecord);
Id.Text = id.ToString();
}

服务端  WebService

using Common;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Web;
using System.Web.Services;

namespace 服务端
{
/// <summary>
/// WebService1 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
//参数:时间 ,地点, 污染物, 投放记录
int id;
[WebMethod]
public int GetData(string time, string address, string pollutant, string PutonRecord)
{
if (time != null && address != null && pollutant != null && PutonRecord != null)
{
string[] msgs = { time, address, pollutant };
File.Delete(@"C:\Users\jun\Desktop\WaterTools\WaterTools\para.txt");
for (int i = 0; i < msgs.Length; i++)
{
using (StreamWriter write = new StreamWriter(@"C:\Users\jun\Desktop\WaterTools\WaterTools\para.txt", true))
{
write.Write(msgs[i] + "\r\n");
}
}
//污染记录分开写入到para.txt文档中
string[] jilu = PutonRecord.Split(' ');
for (int i = 0; i < jilu.Length; i++)
{
using (StreamWriter wri = new StreamWriter(@"C:\Users\jun\Desktop\WaterTools\WaterTools\para.txt", true))
{
wri.Write(jilu[i] + "\r\n");
}
}
//删除原有res.txt文档
try
{
File.Delete(@"C:\Users\jun\Desktop\WaterTools\WaterTools\res.txt");
}
catch { };
Process.Start(@"C:\Users\jun\Desktop\WaterTools\WaterTools\WaterTools.exe");
Data();
}
return id;
}
public int Data()
{
Thread.Sleep(31000);
DirectoryInfo di = new DirectoryInfo(@"C:\Users\jun\Desktop\WaterTools\WaterTools");
FileSystemInfo[] infos = di.GetFileSystemInfos();
for (int i = 0; i < infos.Length; i++)
{
if (infos[i].Name == "res.txt")
{
//存在
FileStream fs = new FileStream(@"C:\Users\jun\Desktop\WaterTools\WaterTools\res.txt", FileMode.Open);
byte[] buffer = new byte[1024 * 1024 * 5];
//实际读取到的有效字节数
int r = fs.Read(buffer, 0, buffer.Length);
//将字节数组解码成字符串
string str = Encoding.Default.GetString(buffer, 0, r);
fs.Close();
fs.Dispose();
string sql = "insert into Data(Result)values(@Res) SELECT @@IDENTITY";
SqlParameter[] ps = new SqlParameter[] { new SqlParameter("@Res", str) };
object obj = SqlHelper.ExcuteScalar(sql, ps);
string o = obj.ToString();
id = Convert.ToInt32(o);
break;
}
}
return id;
}
}
}

另外防止调用时间超时 ,只需要在客户端设置sendTimeout="00:05:00"这里是标识5分钟在节点binding中设置就好

服务端需要设置 executionTimeout="300000"在httpRuntime中设置

WebService 实现BS环境与BS环境传递参数,根据参数生成txt文档的更多相关文章

  1. Laravel(PHP)使用Swagger生成API文档不完全指南 - 基本概念和环境搭建 - 简书

    在PHPer中,很多人听说过Swagger,部分人知道Swagger是用来做API文档的,然而只有少数人真正知道怎么正确使用Swagger,因为PHP界和Swagger相关的资料实在是太少了.所以鄙人 ...

  2. 环境变量PATH、cp命令、mv命令、文档查看cat/more/less/head/tail 各个命令的使用介绍

    第2周第2次课(3月27日) 课程内容: 2.10 环境变量PATH2.11 cp命令2.12 mv命令2.13 文档查看cat/more/less/head/tail 2.10 环境变量PATH P ...

  3. Linux CentOS7 VMware 环境变量PATH、cp命令、mv命令、文档查看cat/more/less/head/tail——笔记

    一.环境变量PATH PATH一个字符串变量,当输入命令的时候LINUX会去查找PATH里面记录的路径. 命令在这几个目录里面就不需要敲绝对路径 echo $PATH 例子:把/tmp/ 加到 $PA ...

  4. WebService生成XML文档时出错。不应是类型XXXX。使用XmlInclude或SoapInclude属性静态指定非已知的类型。

    情况是SingleRoom和DoubleRoom是Room类的子类.在WebService中有一个方法是返回Room类. public Room Get(int roomId) { return Ro ...

  5. JAVA基础学习之命令行方式、配置环境变量、进制的基本转换、排序法、JAVA文档生成等(1)

    1.命令行方式 dos命令行,常见的命令: dir:列出当前目录下的文件以及文件夹 md:创建目录 rd:删除目录 cd:进入指定目录 cd..:退回到上一级目录 cd/:退回到根目录 del:删除文 ...

  6. 从0构建webpack开发环境(三) 开发环境以及 webpack-dev-server 的使用

    sourceMap 实际应用开发过程中大部分时间都是处于开发模式中,其中需要频繁的修改代码.调试和打包. 但是打包后的代码多个模块压缩到了一个bundle文件,如果出现警告或者异常很难定位到具体模块和 ...

  7. uboot环境变量(设置bootargs向linux内核传递正确的参数)

    这是我uboot的环境变量设置,在该设置下可以运行initram内核(从内存下载到nandflash再运行),但是运行nfs根文件系统的时候一直出错,各种错误.查看了很多资料后猜想应该是uboot传递 ...

  8. 如何在Azure环境里做好信息传递可扩展性经验分享

    作者 王枫 发布于2014年5月15日 综述 本文介绍建立一个在Azure上使用Azure服务总线, 高吞吐量短信平台的必要步骤.在这篇文章中提出的解决方案是在响应由客户的具体要求,建立一个基于Win ...

  9. Javascript的二进制数据处理学习 ——nodejs环境和浏览器环境分别分析

    以前用JavaScript主要是处理常规的数字.字符串.数组对象等数据,基本没有试过用JavaScript处理二进制数据块,最近的项目中涉及到这方面的东西,就花一段时间学了下这方面的API,在此总结一 ...

随机推荐

  1. App运营者必须知道的30款数据分析工具

    如今的移动应用早已不再是某种结构单一.功能简单的工具了.当我们的移动应用变得越来越庞杂,我们便会需要借用分析工具,来跟踪和分析App内的每一个部分.幸运的是,目前市面上有许多数据分析工具可供App开发 ...

  2. HDU4739Zhuge Liang's Mines(状压)

    链接 预处理出只有四个1的情况存入数组中 然后状压下 #include <iostream> #include<cstdio> #include<cstring> ...

  3. Hadoop MapReduce 二次排序原理及其应用

    关于二次排序主要涉及到这么几个东西: 在0.20.0 以前使用的是 setPartitionerClass setOutputkeyComparatorClass setOutputValueGrou ...

  4. Oracle 12c创建用户时出现“ORA-65096: invalid common user or role name”的错误

    这篇文章主要介绍CDB和PDB的基本管理,资料来源oracle官方. 基本概念: Multitenant Environment:多租户环境 CDB(Container Database):数据库容器 ...

  5. [Codechef October Challenge 2014]刷漆

    问题描述 Czy做完了所有的回答出了所有的询问,结果是,他因为脑力消耗过大而变得更虚了:).帮助Czy恢复身材的艰巨任务落到了你的肩上. 正巧,你的花园里有一个由N块排成一条直线的木板组成的栅栏,木板 ...

  6. [NOIP2011]瑞士轮

    noip2011普及组第3题. 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平 ...

  7. nyoj 904 hashmap

    这个题目是个水题目,现在我只管做出来,效率不考虑了. 题目链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=904 我用hashmap 很爽,很 ...

  8. oracle 日志学习(转载)

    一,重做日志概念 重做日志文件(redo log file)对于Oracle数据库至关重要.它们是数据库的事务日志.通常只用于恢复,不过也可以用于以下工作: q 系统崩溃后的实例恢复 q 通过备份恢复 ...

  9. PC 端 360 云盘初体验

    首先吐槽一下安装软件,文件名是 360wangpan,安装好后软件名称是"360云盘",好歹得统一下嘛,不然还以为下错了安装文件呢. 一般使用和其他网盘差不多,速度也还行,但还是没 ...

  10. 《Data-Intensive Text Processing with mapReduce》读书笔记之二:mapreduce编程、框架及运行

    搜狐视频的屌丝男士第二季大结局了,惊现波多野老师,怀揣着无比鸡冻的心情啊,可惜随着剧情的推进发展,并没有出现期待中的屌丝奇遇,大鹏还是没敢冲破尺度的界线.想百度些种子吧,又不想让电脑留下污点证据,要知 ...