8,734
社区成员
发帖
与我相关
我的任务
分享
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Web.Tools
{
[Serializable]
public class MyDrawData
{
public MyDrawData()
{
}
// {MineName:’’,SenID:’’, Degree:’’,SenName:’’,SenType:’’,SenUnit:’’,WarnMax:’’,
// WarnMin:’’,TurnOff:’’,Reset:’’, Link:’’, Max:’’, MaxValue:’’,MinValue:’’,AveValue:’’,
// Data:[{V:’’,S:’’,T:’’, Address:’’},{}]},{
// },
/// <summary>
/// 矿名
/// </summary>
public string MineName;
/// <summary>
/// 传感器编号
/// </summary>
public string SenId;
/// <summary>
/// 开停次数
/// </summary>
public string Degree;
/// <summary>
/// 传感器名称
/// </summary>
public string SenName;
/// <summary>
/// 传感器类型(模拟量)
/// </summary>
public string SenType;
/// <summary>
/// 单位
/// </summary>
public string SenUnit;
/// <summary>
/// 报警上限
/// </summary>
public string WarnMax;
/// <summary>
/// 报警下限
/// </summary>
public string WarnMin;
/// <summary>
/// 断电浓度
/// </summary>
public string TurnOff;
/// <summary>
/// 复电浓度
/// </summary>
public string Reset;
/// <summary>
/// 关联传感器、传感器编号
/// </summary>
public string Link;
/// <summary>
/// 量程上限
/// </summary>
public string Max;
/// <summary>
/// 最大值
/// </summary>
public string MaxValue;
/// <summary>
/// 最小值
/// </summary>
public string MinValue;
/// <summary>
/// 平均值
/// </summary>
public string AveValue;
/// <summary>
/// 数据
/// </summary>
public List<LineData> Data;
/// <summary>
/// 定义Data:[{"V":'当前值',"S":'当前状态',"T":'当前时间}
/// </summary>
[Serializable]
public class LineData
{
/// <summary>
/// 当前值
/// </summary>
public string V;
/// <summary>
/// 当前状态
/// </summary>
public string S;
/// <summary>
/// 当前时间
/// </summary>
public string T;
}
}
}
[OperationContract]
/// <summary>
/// 获取曲线数据
/// </summary>
/// <param name="pitNumber">矿井编号</param>
/// <param name="arrySendorNumber">传感器编号</param>
/// <param name="startTime">开始时间</param>
/// <param name="endTime">结束时间</param>
/// <param name="association">关联</param>
///<param name=" stat”>统计</param>
/// <returns></returns>
public List<Web.Tools.MyDrawData> GetChartData(string pitNumber, List<string> arrySendorNumber, DateTime startTime, DateTime endTime, bool association, bool stat)
{
string str = "{MineName:'1',SenID:'2', Degree:'3',SenName:'4',SenType:'5',SenUnit:'',WarnMax:'',WarnMin:'',TurnOff:'',Reset:'', Link:'', Max:'', MaxValue:'',MinValue:'',AveValue:'',Data:[{V:'',S:'',T:'', Address:''},{V:'a',S:'b',T:'c', Address:'d'}]}";
str = "[" + str + "," + str + "]";
System.Web.Script.Serialization.JavaScriptSerializer Serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
List<Web.Tools.MyDrawData> aaa = Serializer.Deserialize<List<Web.Tools.MyDrawData>>(str);
//DataContractSerializer serializer = new DataContractSerializer();
return aaa;
}
[DataContract]
public class MyDrawData
{
public MyDrawData()
{
}
// {MineName:’’,SenID:’’, Degree:’’,SenName:’’,SenType:’’,SenUnit:’’,WarnMax:’’,
// WarnMin:’’,TurnOff:’’,Reset:’’, Link:’’, Max:’’, MaxValue:’’,MinValue:’’,AveValue:’’,
// Data:[{V:’’,S:’’,T:’’, Address:’’},{}]},{
// },
/// <summary>
/// 矿名
/// </summary>
[DataMember]
public string MineName;
/// <summary>
/// 传感器编号
/// </summary>
[DataMember]
public string SenId;
}
}
}
//实体类集合序列化为字符串
public static string Serializer(Object objToXml)
{
System.IO.StringWriter writer = new System.IO.StringWriter();
System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(objToXml.GetType());
serializer.Serialize(writer, objToXml);
return writer.GetStringBuilder().ToString();
}
/// <summary>
/// 反序列化字符串为实体类
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="sXml"></param>
/// <returns></returns>
public static T DeSerializer<T>(String sXml)
{
Type type = typeof(T);
XmlReader reader = XmlReader.Create(new StringReader(sXml));
System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(type);
object obj = serializer.Deserialize(reader);
return (T)obj;
}
private string _MineName;
/// <summary>
/// 矿名
/// </summary>
public string MineName
{
set { _MineName = value; }
get { return _MineName; }
}