工业领域C# 联合MES数据上传

MES系统本质是用来实现对生产现场、质量跟踪和追溯、质量控制、生产设备的管理功能,为生产部、品质保证部、工艺等部门提供车间管理信息服务。

/// <summary>
/// 创建Get方式的HTTP请求
/// </summary>
/// <param name="Url">接口地址</param>
/// <returns></returns>
public static string Get(string Url)
{
   try
{

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Proxy = null;
request.KeepAlive = false;
request.Method = "GET";
request.ContentType = "application/json; charset=UTF-8";
request.AutomaticDecompression = DecompressionMethods.GZip;

HttpWebResponse response = (HttpWebResponse)request.GetResponse();//服务器返回数据
//m_getstatusCode = (HttpStatusCode)Convert.ToInt32(response.StatusCode);//获取服务器状态码
m_getstatusdescription = response.StatusDescription;//获取服务器响应状态
Stream myResponseStream = response.GetResponseStream();
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);
string retString = myStreamReader.ReadToEnd();

myStreamReader.Close();
myResponseStream.Close();

if (response != null)
{
   response.Close();
}
if (request != null)
{
   request.Abort();
}
return retString;
}
catch (Exception ex)
{
   if (ex.Message.Length > 12)
{
   GlobalVar.getNgResult = ex.Message.Substring(12, 3);
   m_getstatusdescription = "NG";
   return GlobalVar.getNgResult;
}
else
{
   GlobalVar.getNgResult = "ER";
   m_getstatusdescription = "NG";
return GlobalVar.getNgResult;
}

}
}


/// <summary>
/// 创建Post方式的HTTP请求
/// </summary>
/// <param name="Url"></param>
/// <param name="Data"></param>
/// <param name="Referer"></param>
/// <returns></returns>
public static string Post(string Url, string Data, string Referer)
{
try
{
string retString;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Method = "POST";
request.Referer = Referer;
byte[] bytes = Encoding.UTF8.GetBytes(Data);
//request.ContentType = "application/x-www-form-urlencoded";
request.ContentType = "application/json; charset=UTF-8";
request.ContentLength = bytes.Length;
Stream myResponseStream = request.GetRequestStream();
myResponseStream.Write(bytes, 0, bytes.Length);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
m_poststatusDescription = response.StatusDescription;//获取服务器响应状态
// m_poststatusCode = (HttpStatusCode)Convert.ToInt32(response.StatusCode);//获取服务器状态码
StreamReader myStreamReader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
retString = myStreamReader.ReadToEnd();

myStreamReader.Close();
myResponseStream.Close();

if (response != null)
{
response.Close();
}
if (request != null)
{
request.Abort();
}
return retString;

}
catch (Exception ex)
{

GlobalVar.postNgResult = ex.Message.Substring(12, 3);
m_poststatusDescription = "NG";
return GlobalVar.postNgResult;
}
}

}

/// <summary>
/// 发送信息
/// </summary>
/// <returns></returns>

string js;

string Type;

public void ResultSendMes()

{

try

{

ResultSend send=new ResultSend();

send.Type="Item"  //客户提供接口

//send.OK=results.OK.ToString();

js=JsonConvert.SerializeObject(send);  //将字符串转换为json 格式字符串

}

catch(Exception ex)

{

}

}

/// <summary>
/// 发送结果方法 与客户端对接
/// </summary>
/// <returns></returns>

public class ResultSend

{

public string Type;//字段

}

/// <summary>
/// 接收信息
/// </summary>
/// <returns></returns>

public string Message;

public void ResultReceiveMes()

{

try

{

ResultReceive receive=new ResultReceive();

receive=JsonConvert.DeserializeObject<ResultRecieve>(Post(js));

string message=receive.Message;

catch(Exception ex)

{

}

}

}

/// <summary>
/// 接收结果方法 与客户端对接
/// </summary>
/// <returns></returns>

public class ResultReceive

{

  //请求结果 1- 成功 0- 失败
        public int Status;
        //  请求结果 
        public string Message;
        //返回数据结果
        public string Data;

}

  • 3
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值