Я новичок в технике сервера.Я соединяю мобильный телефон с сервером приложений, и сервер приложений общается локально с сервером SQL.
Есть ли способ отправки и чтения столбцов с сервера SQL?Я имею в виду, что до сих пор я отправляю все столбцы в строке, разделенной запятой.
Когда клиент берет эту строку, он разделяет их и заполняет список или просмотр списка ...
Пример моей строкиимеет следующую форму: Джон, 24,1-й класс
и мой клиент содержит этот класс
public class objects()
{
public string Name{get;set;}
public string Age{get;set;}
public string SchoolClass{get;set;}
}
Так что, когда я получаю ответ, я заполняю каждое значение из моей строки в каждом спискеобъект.
Есть ли другой метод, более эффективный и быстрый, чем этот?
var web = new HttpListener();
web.Prefixes.Add("http://localhost:8080/");
Console.WriteLine("Listening..");
web.Start();
Console.WriteLine(web.GetContext());
var context = web.GetContext();
var response = context.Response;
string responseString = "";
using (SqlConnection connection = new SqlConnection(connectionString)
{
connection.Open();
using(SqlCommand cmd = new SqlCommand("Select name,age,SchoolClass from Students",connection))
using(SqlDataReader read=cmd.ExecuteReader))
{
while(read.Read())
{
responseString +=read["Name"].ToString() + ",";
responseString +=read["Age"].ToString() + ",";
responseString +=read["SchoolClass"].ToString() + ",";
}
}
var buffer = System.Text.Encoding.UTF8.GetBytes(responseString);
response.ContentLength64 = buffer.Length;
var output = response.OutputStream;
output.Write(buffer, 0, buffer.Length);
Console.WriteLine(output);
output.Close();
web.Stop();
Console.ReadKey();