KSOAP Android - Получить struct от C# Web Service
-
22-10-2019 - |
Вопрос
Я создаю приложение для Android, которое подключается к моему веб -сервису ASP.NET.
Я уже создал соединение, используя KSOAP, и мне удастся выполнить методы, которые возвращают строки и Int.
Я использую самоуверенные для получения этих методов:
SoapPrimitive resultString = (SoapPrimitive)soapEnvelope.getResponse();
Проблема в том, когда у меня есть метод, который возвращает следующую структуру - массив.
Как я могу его получить?
public struct ClientData
{
public int id_note;
public string descricao;
public string timer;
}
[WebMethod]
public ClientData[] open_notes(int _id_users)
{
MySqlConnection conn = new MySqlConnection("**************************************");
MySqlDataReader rdr = null;
int y = 0;
try
{
//abrir conexão
conn.Open();
//passar conexão para command object
MySqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT id_notes, note, timer from notes WHERE id_users = '" + _id_users + "' AND note_is_active = 1 ORDER BY lastmodified DESC";
rdr = cmd.ExecuteReader();
ClientData[] Clients = null;
Clients = new ClientData[30];
if (rdr.HasRows)
{
while (rdr.Read())
{
Clients[y].id_note = int.Parse(rdr[0].ToString());
Clients[y].descricao = rdr[1].ToString();
Clients[y].timer = rdr[2].ToString();
y = y + 1;
}
Array.Resize(ref Clients, y);
rdr.Close();
}
else
{
Clients[0].id_note = 0;
Array.Resize(ref Clients, 1);
}
return Clients;
}
finally
{
// close the reader
if (rdr != null)
{
rdr.Close();
}
// 5. Close the connection
if (conn != null)
{
conn.Close();
}
}
}
Решение
Я думаю, что эта ссылка поможет:Веб -сервис, который возвращает множество объектов с KSOAP
Не связан с StackOverflow