C # WebMethod retuen List <Object> - PullRequest
       26

C # WebMethod retuen List <Object>

0 голосов
/ 11 октября 2018

Я хочу вернуть List в моем веб-методе, как показано ниже,

public List<Object> MyMethod(){

List<Object> list = new List<Object>();
myClass a = new myClass();
list.Add(a);

return list;

}

public class myClass{
public int StudetNumber {get; set;}
public string StudentName {get; set;}
public decimal average {get; set;}
}

Но я получаю эту ошибку: System.InvalidOperationException: myClass не ожидается.System.Xml.Serialization.XmlSerializationWriter.WriteTypedPrimitive (имя строки, строка ns, объект o, логический xsiType);

Я не получаю сообщение об ошибке, когда возвращается список myClass.Можно вернуть список System.Object или я должен вернуть список myClass?

Спасибо за продвижение.

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Кажется, теперь я понимаю твой вопрос.Кажется, что это не совместимо, возвращая универсальный тип, такой как «Объект» или List<Object> в веб-методе, потому что в веб-методе у вас будет определение XML (WSDL), и нет никакого способа определить универсальный типв этом определении.Таким образом, кажется, что вам всегда нужно возвращать определенный класс, в вашем случае «myClass».

Посмотрите на следующий пост, где обсуждалась эта тема, чтобы она была немного более понятной для вас:

Как вернуть веб-сервис C #, который имеет универсальное свойство?

0 голосов
/ 11 октября 2018

вам не хватает зарезервированного слова 'class' в определении вашего класса, вам не хватает нескольких ';' s

  public class myClass
    {
        public int StudetNumber { get; set; }
        public string StudentName { get; set; }
        public decimal average { get; set; }
    }
...