c# 接口 JOSN

fangye23 2012-07-07 03:43:47
需要用C# .net做一个接口:数据库查询出ID,Name然后转换成JOSN格式,返回给调用的就可以。

从来没有做过接口,对josn也不是很熟悉,自己尝试简单写了点,各位大侠帮忙看看,有类似例子的是否可以发给我参考参考,

不胜感激。

以下是我写的一些代码,希望可以用URL的形式调用,我返回JOSN格式的数据就行,给点意见:


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MII.DAL;
using System.Data.SqlClient;
using MII.Web.Class;
using System.Text.RegularExpressions;
using System.Security.Cryptography;

namespace MII.Web.json
{
interface Interface1 //创建接口 不知道这样写对不对
{
public string SelectArea()
{
string text = "";
string sql = "SELECT i.SID, i.nIName, s.sPID FROM NodeInfo AS i LEFT OUTER JOIN NodeStruct AS s ON i.SID = s.SID"; //查询数据库
DataTable dt = new DataTable();
try
{
dt = DBOperators.SelectTable(sql);
if (dt.Rows.Count != 0)
{

for (int i = 0; i < dt.Rows.Count; i++)
{
text += "{'ID':'"+dt.Rows[i]["SID"].ToString().Trim()+"','name':'"+dt.Rows[i]["nIName"].ToString().Trim()+"'},"; //将数据转换成JOSN格式 是否正确?

}

}

}
catch (Exception ex)
{

throw ex;
}

//Response.Write(text); 想返回到请求的URL 这样写对吗?
}
}
}
...全文
463 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruhemei 2013-01-04
  • 打赏
  • 举报
回复
string content = "{\"total\":" + dt.Rows.Count + ",\"rows\":["; for (int i = 0; i < dt.Rows.Count; i++) { content += "{\"idXl\":\"" + dt.Rows[i]["idXl"].ToString() + "\","; content += "\"id_Da\":\"" + dt.Rows[i]["id_Da"].ToString() + "\","; content += "\"xz\":\"" + dt.Rows[i]["xz"].ToString() + "\","; content += "\"zy\":\"" + dt.Rows[i]["zy"].ToString() + "\"},"; } content = content.TrimEnd(',') + "]}";
nonocast 2012-07-09
  • 打赏
  • 举报
回复
fangye23 2012-07-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
为什么不直接用json的序列号和反序列号呢


C# code


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

using System.Web.Script.Serialization;
using System.Runtime.Seriali……
[/Quote]


不是很明白,没有用到过 能具体给个例子吗?
lihui1969 2012-07-09
  • 打赏
  • 举报
回复
在。net里有相应的json插件,你可以吧json的dll引用到项目里,他们有一个专门的方法转义json格式的,好像是JavaScriptConvert.SerializeObject(“可以放集合也可以是datsset”);
这样类似的方法,你自己手写与不一定写的对。我建议你下载一个。
zhang98722 2012-07-09
  • 打赏
  • 举报
回复
为什么不直接用json的序列号和反序列号呢


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

using System.Web.Script.Serialization;
using System.Runtime.Serialization.Json;
using System.IO;

namespace JD_EDM.EmailService.Utility.Serialize
{
public class Json
{
public static string Serialize(Object model)
{
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
string strJson = javaScriptSerializer.Serialize(model);
return strJson;
}

public static T Deserialize<T>(string json)
{
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
T model = javaScriptSerializer.Deserialize<T>(json);
return model;
}
}
}


fangye23 2012-07-09
  • 打赏
  • 举报
回复
没有高手会嘛?

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧