2025-03-28 09:49:56 +08:00

84 lines
2.9 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Script.Serialization;
namespace EShangApi.Helper
{
public class JsonHelper
{
/// <summary>
/// 将对象序列化为JSON格式
/// </summary>
/// <param name="obj"></param>
/// <returns></returns>
private static string JsonSerializer(object obj)
{
var jss = new JavaScriptSerializer();
return jss.Serialize(obj);
}
/// <summary>
/// 返回状态的Json处理
/// </summary>
/// <param name="code"></param>
/// <param name="msg"></param>
/// <returns></returns>
private static string GetReturnStatusJsonStr(int code, string msg, string data = null)
{
string json = "[{\"Result_Code\":#code#,\"Result_Desc\":\"#msg#\",\"Result_Data\":\"#data#\"}]";
json = json.Replace("#code#", code.ToString());
json = json.Replace("#msg#", msg);
json = json.Replace("#data#", data);
return json;
}
/// <summary>
/// 把json字符串转成对象
/// </summary>
/// <typeparam name="T">对象</typeparam>
/// <param name="data">json字符串</param>
public static T Deserialize<T>(string data)
{
JavaScriptSerializer json = new JavaScriptSerializer();
return json.Deserialize<T>(data);
}
/// <summary>
/// Json数据分页
/// </summary>
/// <typeparam name="T">分页对象</typeparam>
/// <param name="obj"></param>
/// <param name="pageCount">分页个数</param>
/// <param name="pageIndex">当前页码</param>
/// <returns></returns>
//private string GetPageJson<T>(IEnumerable<T> obj, int pageCount, int pageIndex)
//{
// string retJson = (100).ToString();
// var enumerable = obj as List<T> ?? obj.ToList();
// if (enumerable.Count > 0)
// {
// retJson = "{\"count\":#count#,\"items\":#data#}";
// string dataStr = "";
// var data = enumerable.ToList().Skip((pageIndex - 1) * pageCount).Take((pageCount));
// if (data.Any())
// {
// dataStr = JsonSerializer(data);
// retJson = retJson.Replace("#count#", data.Count().ToString(CultureInfo.InvariantCulture));
// retJson = retJson.Replace("#data#", dataStr);
// }
// else
// {
// retJson = GetReturnStatusJsonStr((int)EnumType.ReturnStatus.NoData, "没有数据");
// }
// }
// else
// {
// retJson = GetReturnStatusJsonStr((int)EnumType.ReturnStatus.NoData, "没有数据");
// }
// return retJson;
//}
}
}