У меня есть веб-сервис, который оборачивает функции COM-объекта с целью уменьшения ошибок связи RPC.Параметр, который я передаю определенному веб-сервису, это string[]
.Кажется, проблема заключается в функции объекта COM, которая требует ссылки на объект.
Некоторые ошибки будут отображаться на веб-странице, поскольку они происходят из COMClass (ошибка 87), другие - ошибки компилятора.Я попытался указать, что ниже.
[WebMethod(EnableSession=true)]
public int WSFunc(string[] StringArray){
//object StringArr = (object)((object[])StringArr); //returns error 87 in webpage log
//object StringArr = (object)StringArr; //returns error 87 in webpage log
//public override int COMClass.Func(ref object pStringList)
return COMClass.Func(ref StringArr);
//return COMClass.Func(ref StringArray); //Doesn't build, cannot convert from 'ref string[]' to 'ref object' (CS1503)
//return COMClass.Func(ref (object)StringArr); //Doesn't build, A ref or out argument must be an assignable variable (CS1510)
}
Кроме того, это дает тот же результат (ошибка 87 - неверный параметр):
[WebMethod(EnableSession=true)]
public string WSFunc(string[] StringArray){
object[] StringObj = new object[StringArray.Length];
for(int i = 0; i < StringArray.Length; i++){
StringObj[i] = StringArray[i];
}
object MyString = (object)StringObj;
return ComClass.Func(ref MyString);
}
Кто-нибудь еще сталкивался с этимвопрос