不能在 Web 服务应用程序中出现 System.ComponentModel.ISite 错误的可序列化成员 Syst
本文关键字:错误 ISite 序列化 Syst 成员 ComponentModel System 服务 Web 应用程序 不能 | 更新日期: 2023-09-27 18:34:08
我有一个Web服务应用程序,它从SQL Server数据库获取数据。我想得到产品我的数据库,所以我写了一个如下方法:我该怎么办?
public class ProductBusiness :System.Web.Services.WebService
{
public int ProductId { get; set; }
public string ProductName { get; set; }
public byte[] ProductImage { get; set; }
[WebMethod()]
public List<ProductBusiness> getProduct()
{
using (HealthyFoodEntities db = new HealthyFoodEntities())
{
var query = from x in db.Products
select new ProductBusiness
{
ProductImage = x.Picture,
ProductName = x.ProductName
};
return query.ToList();
}
}
您不能返回ProductBusiness
类的实例,因为它本身将引用Service
的实例。
因此,请更改您的服务类名称,如下所示:
public class ProductBusinessService :System.Web.Services.WebService
或者,将您的自定义类与服务类分开,并将其重命名为其他名称,如下所示:
public class ProductBusinessData
{
public int ProductId { get; set; }
public string ProductName { get; set; }
public byte[] ProductImage { get; set; }
}
然后,您可以在您的服务中使用它:-
[WebMethod]
public List<ProductBusinessData> getProduct()
{
//Your Code
}