Как отправить / передать ArrayList со стороны клиента на сторону сервера - PullRequest
0 голосов
/ 06 июня 2018

В моем веб-сервисе я реализовал метод SaveSurveyAnswerAsync, в котором у меня один из параметров - arraylist.Вот как я буду читать данные (которые уже реализованы), из которых сделан вызов из приложения xamarin froms.

private DataTable ConvertArrayToDT(ArrayList Answer)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("int_SurveyQuestionID", typeof(int));
            dt.Columns.Add("int_SurveyAnswerID", typeof(int));

            foreach (string item in Answer)
            {
                DataRow dr = dt.NewRow();
                dr["int_SurveyQuestionID"] = item[0].ToString();
                dr["int_SurveyAnswerID"] = item[1].ToString();
                dt.Rows.Add(dr);
            }

            return dt;
        }

Это мой метод сохранения:

[OperationContract]
[WebInvoke(Method = "Post",
 BodyStyle = WebMessageBodyStyle.WrappedRequest,
 ResponseFormat = WebMessageFormat.Json
 )]

string SaveSurveyAnswer(string ClientCode, int OrganizationID, string UserID, int SurveyID, int UserSurveyID, ArrayList Answer);

Вxamarin froms запрашивает ObservableCollection объекта.Теперь, когда я отправляю список наблюдаемых коллекций, он возвращает мне исключение (и это довольно просто, почему возникает исключение).так что теперь вопрос в том, как я могу послать arraylist, когда он запрашивает у меня список наблюдаемых коллекций в xamarin

Вот скриншот проблемы ScreenShot

1 Ответ

0 голосов
/ 06 июня 2018

В этом случае я посоветую вам использовать файл json и serialzes файл, например, вы можете сохранить его как строку, а когда захотите, просто deserialize.

Пример:

Сериализация:

var json = JsonConvert.SerializeObject(t);

Дериализация до объекта:

var json = await httpClient.GetStringAsync(WebServiceUrl+context);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...