工具类

using System;
using System.Collections.Generic;
using System.Text;

namespace Lbs3.Core.Domain
{
/// <summary>
/// 查询参数通用类
/// </summary>
public class QueryParams<T>
{
/// <summary>
/// 是否分页
/// </summary>
public bool IsPage { get; set; }
/// <summary>
/// 当前页标
/// </summary>
public int PageIndex { get; set; }
/// <summary>
/// 大小
/// </summary>
public int PageSize { set; get; }
/// <summary>
/// 查询参数对象
/// </summary>
public T Entity { get; set; }
/// <summary>
/// 当前用户id
/// </summary>
public string thisUserId { get; set; }
/// <summary>
/// 当前部门id
/// </summary>
public string thisGroupId { get; set; }
/// <summary>
/// 当前公司id
/// </summary>
public string thisCommnyId { get; set; }


}

public static class JsonHelper
{

/// <summary>
/// JSON格式字符转换为T类型的对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="jsonStr"></param>
/// <returns></returns>
public static T ParseFormByJson<T>(string jsonStr)
{
T obj = Activator.CreateInstance<T>();
using (System.IO.MemoryStream ms =
new System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes(jsonStr)))
{
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer =
new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
return (T)serializer.ReadObject(ms);
}
}
/// <summary>
/// 转换List<T>的数据为JSON格式
/// </summary>
/// <typeparam name="T">类</typeparam>
/// <param name="vals">列表值</param>
/// <returns>JSON格式数据</returns>
public static string JSON<T>(List<T> vals)
{
System.Text.StringBuilder st = new System.Text.StringBuilder();
try
{
System.Runtime.Serialization.Json.DataContractJsonSerializer s = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));

foreach (T city in vals)
{
using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
{
s.WriteObject(ms, city);
st.Append(System.Text.Encoding.UTF8.GetString(ms.ToArray()));
}
}
}
catch (Exception ex)
{
throw ex;
}

return st.ToString();
}
/// <summary>
/// 转换对象为JSON格式数据
/// </summary>
/// <typeparam name="T">类</typeparam>
/// <param name="obj">对象</param>
/// <returns>字符格式的JSON数据</returns>
public static string GetJSON<T>(T obj)
{
string result = String.Empty;
try
{
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer =
new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
{
serializer.WriteObject(ms, obj);
result = System.Text.Encoding.UTF8.GetString(ms.ToArray());
}
}
catch (Exception ex)
{
throw ex;
}
return result;
}
}

}

posted @ 2020-12-15 19:59  菜鸟-程序猿  阅读(76)  评论(0)    收藏  举报