簡體   English   中英

ASP.NET:從Web Service方法返回對象列表

[英]ASP.NET: returning list of objects from Web Service method

我想知道如何返回對象列表而不是字符串列表?

返回字符串列表是可行的,但是當我用對象替換所有內容時,它將失敗。

這是我的網絡服務

[WebMethod]
 public List<OpProduct> SearchProduct(string name) {
   BLProduct blProduct = new BLProduct();
   List<OpProduct> result = byproduct.SearchProducts(name);

   return result;
}

這是我的業務邏輯層

public List<OpProduct> SearchProducts(string name)
{
  List<OpProduct> result = (from item in db.OpProducts where item.Name.StartsWith(name) select item).ToList<OpProduct>();

  return result;
}

這是我的錯誤消息(對不起,無法翻譯此消息)

System.InvalidOperationException:可能是通用的XML文檔。 ---> System.InvalidOperationException:錯誤是對象類型為OpProduct。 bij System.Xml.Serialization.XmlSerializationWriter.WriteStartElement(字符串名稱,字符串ns,對象o,布爾型writePrefixed,XmlSerializerNamespaces xmlns)bij Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write9_OpProduct(String n,String ns ,布爾型NeedType)
bij Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write5_OpGeheugen(String n,String ns,OpGeheugen o,Boolean isNullable,Boolean NeedType)
bij Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write9_OpProduct(String n,String ns,OpProduct o,Boolean isNullable,Boolean needType)
bij微軟。 o,XmlSerializerNamespaces命名空間,字符串encodingStyle,字符串id)--- Einde van intern uitzonderingsstackpad --- bij System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,Object o,XmlSerializerNamespaces命名空間,字符串encodingStyle,字符串id) Xml.Serialization.XmlSerializer.Serialize(TextWriter textWriter,Object o,XmlSerializerNamespaces命名空間)bij System.Web.Services.Protocols.XmlReturnWriter.Write(HttpResponse響應,Stream outputStream,Object returnValue)bij System.Web.Services.Protocols。 WriteReturns(Object [] returnValues,Stream outputStream)bij System.Web.Services.Protocols.WebServic eHandler.WriteReturns(Object [] returnValues)bij System.Web.Services.Protocols.WebServiceHandler.Invoke()

誰能幫我?

默認情況下,僅系統原語類型和這些原語類型的數組(如int,float,double,string)可用作返回值。

如果要使用自己的類作為參數,則必須使用XML定義將它們定義為復雜類型。 這是有關此https://msdn.microsoft.com/zh-cn/library/aa480498.aspx的MSDN鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM