2012-03-10 1 views
0

Я пытаюсь отправить массив в MonoTouch веб-службе vb.net. Вот это веб-сервис:Аргумент '# 1' не может преобразовать 'string [] []' выражение для ввода 'string' - MonoTouch

Public Function Add_Array(ByVal arr()() As String, ByRef sMessage As String) As Boolean 
Dim a, b, c As String a = arr(1)(0) b = arr(1)(1) c = arr(1)(2) sMessage = a + ", " + b + ", " + c + ". Submittion was recieved, and Second items are showen." 
Return True 
End Function 

я добавил веб-службу, перейдя добавить веб-ссылку, добавив в URL веб-службы, и выбрать .NET 2.0 веб-служб в качестве основы, а затем wsFish в качестве ссылки.

Вот мой MonoTouch код:

wsFISH.Service1 wsArray; 
string[][] abc = new string[6][]; 
string[] xyz = new string[3]; 
string t=""; 

xyz[0] = “a”; 
xyz[1] = “b”; 
xyz[2] = “c”; 
abc[0] = xyz; ... 

wsArray.Add_Array(abc, ref t); 

Это ошибка я получаю: «Лучший перегруженный матч метода„Add_Array (строка, иая строка)“имеет некоторый недействительные аргументы Аргумент„# 1“ не может преобразовать выражение 'string [] []', чтобы ввести 'string' "

Я написал код C# вне монотуха, который будет обращаться к веб-службе, используя точный код, который у меня есть в моноточе. Есть идеи?

+0

Это не похоже на 'Add_Array (string [] [] arr, ref string sError)' является частью веб-службы (сгенерированного кода), на которую вы ссылаетесь. Можете ли вы изменить свой вопрос, чтобы добавить (часть) сгенерированного кода (например, все перегрузки Add_Array)? – poupou

+0

@poupou Я новичок в этом, поэтому не знаю, полностью ли понимаю, что вы подразумеваете под перегрузками. Я предполагаю, что вы имеете в виду разные переменные в Add_Arry. Я полностью добавил веб-сервис и описал, как я добавил веб-сервис в монотач. Дайте мне знать, если вам нужна дополнительная информация. БЛАГОДАРЯ! – JamesCBaird

+0

Это может быть проблема с сгенерированным кодом. Возможно, он создал код для Add_Array со строкой в ​​качестве первого параметра, а не для многомерного массива строк. Я бы проверить, не так ли. Вероятно, вы можете исправить это вручную. –

ответ

0

Вот ответ, который я нашел. Есть две части.

Во-первых, мне нужно, чтобы добавить правильные ссылки:

using System; 
using System.Drawing; 
using System.Data; 
using System.Collections; 
using MonoTouch.Foundation; 
using MonoTouch.UIKit; 
using System.Web.Services; 

Во-вторых, я использовал Jagged массив, который сделал добавить некоторые вопросы. Решением этого послужило то, что предложил @DaveFerguson (изменение сгенерированного кода).