我是网络搜索的新手。我不知道如何在 Web 服务中编写程序请在程序中帮助我我想将 Web 服务连接到数据库然后从那里我得到 json 格式的数据
在客户端即时使用 jquery 移动框架,jquery Ajax
假设在数据库中
身份证标题
1个
2个
我是网络搜索的新手。我不知道如何在 Web 服务中编写程序请在程序中帮助我我想将 Web 服务连接到数据库然后从那里我得到 json 格式的数据
在客户端即时使用 jquery 移动框架,jquery Ajax
假设在数据库中
身份证标题
1个
2个
这是我从我的一些代码中复制的示例。
WCF 接口定义
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
[ServiceContract]
public interface IGraphDataProvider
{
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, UriTemplate = "devices")]
List<string> get_devices();
}
WCF 实施
public class GraphDataProvider : IGraphDataProvider
{
/**
* @brief Return a (possibly empty) list of devices listed in the configuration DB
* */
public List<string> get_devices()
{
// If you want to modify your headers...
// WebOperationContext.Current.OutgoingResponse.Headers["Access-Control-Allow-Origin"] = "*";
// Now just return a list of strings, WCF will convert to JSON
return getDevices();
}
}
这会处理 JSON 响应。如果您不知道如何阅读您的 SQL DB,有几种方法。
您可以使用实体框架。它简单方便,一旦设置好,您的代码将如下所示:
public static List<string> getDevices()
{
var db_context= new CfgEntities();
var devices = from row in db_context.Devices
where !row.Device.StartsWith("#")
select row.Device.Trim();
return devices.Distinct().ToList();
}
使用 Microsoft 的SQL 客户端。您的代码将如下所示:
using System.Data.SqlClient;
// ...
public static List<string> getDevices()
{
var sql_connection_ = new SqlConnection();
sql_connection_.ConnectionString = string.Format("Server=localhost; database={0}; Trusted_Connection=SSPI", dbName);
try
{
sql_connection_.Open();
}
// catch exceptions etc. If Open() worked then you have a connection.
string queryString = "SELECT [Device] from [Config].[dbo].[Devices]";
// Now I'm just copying shamelessly from MSDN...
SqlCommand command = new SqlCommand(queryString, sql_connection_);
SqlDataReader reader = command.ExecuteReader();
List<string> return_list = new List<string>();
while (reader.Read())
{
return_list.Add((string)reader[0]);
}
return return_list;
}