这是我写的代码。但添加产品方法不起作用。任何人都可以帮助我吗?
public class Sales : ISales
{
ArrayList plist;
public Sales()
{
plist = new ArrayList();
plist.Add(new Product() { productId=1,name="com",description="fsf",price=2000});
}
public void addProduct(Product p)
{
plist.Add(new Product() { productId = 2, name = "com", description = "fsf", price = 2000 });
}
}
这是接口类。得到价格的方法是有效的。但是获得产品方法不起作用。 我无法理解这是什么问题。
namespace WcfService2
{
[ServiceContract]
[ServiceKnownType(typeof(Product))]
public interface ISales
{
[OperationContract]
double getprice(int id);
[OperationContract]
Product getProduct(int pid);
[OperationContract]
void addProduct(Product p);
}
//need to have datacontarct for composite data type
[DataContract]
public class Product
{
[DataMember]
public int productId { set; get; }
[DataMember]
public string name { set; get; }
[DataMember]
public string description { set; get; }
[DataMember]
public double price { set; get; }
}
}
答案 0 :(得分:0)
addProduct
方法的实施似乎并不正确。您已声明参数,但您没有使用它。如果要将作为参数传递的产品添加到列表中,则应使用:
public void addProduct(Product p)
{
plist.Add(p);
}