目前,我正在将数据表转换为json,它工作正常。
问题是我想压缩响应。有人建议我。 WSID ... 我想要这样的东西: - https://gist.github.com/chrisnicola/1147568
using (PooledConnection pooledConnection = AdomdConnectionPool.GetConnection(connstring))
{
// Execute the query
AdomdDataAdapter adapter = new AdomdDataAdapter(q, pooledConnection.Connection);
DataTable x = new DataTable();
adapter.Fill(x);
System.Web.Script.Serialization.JavaScriptSerializer serializer = new
System.Web.Script.Serialization.JavaScriptSerializer();
List<object> header = new List<object>();
List<List<object>> rows = new List<List<object>>();
foreach (DataColumn col in x.Columns)
{
header.Add(col.ColumnName.Trim());
}
foreach (DataRow row in x.Rows)
{
List<object> rowtemp = new List<object>();
foreach (DataColumn col in x.Columns)
{
rowtemp.Add(row[col]); //For Row 24012014----- Rohit
}
rows.Add(rowtemp);
}
return Response.AsJson(new { header, rows });
}
答案 0 :(得分:1)
如果你想在你的南希代码中完成(而不是像IIS配置),你可以创建自己的自定义序列化器/反序列化器,让Nancy拿起它。 有关这样做的信息,请参阅Phillip Haydons博客:http://www.philliphaydon.com/2013/05/nancyfx-revisiting-content-negotiation-and-apis-part-3/
答案 1 :(得分:0)
为什么不序列化初始对象(即大),压缩序列化对象,发送压缩字符串。
你已经拥有了json?使用.net4.5中的内置压缩例程对其进行压缩,然后发送压缩字符串。
另一方面,反过来。
我在我的一个普通WCF项目中这样做。
这一切都假设您可以控制客户端和服务器。
答案 2 :(得分:0)