asp.net Web服务对象操作

asp.net Web服务对象操作,asp.net,web-services,json,anonymous-types,Asp.net,Web Services,Json,Anonymous Types,可能不是特定于Web服务,但是 我有一个webmethod返回: List<Tadpole> myList = getList(); return new { data = myList , count = 5 }; List myList=getList(); 返回新的{data=myList,count=5}; 它将其作为JSON返回 我的代码检查myList[x].fishsticks,它实际上不是Tadpole类的一部分(因此它会出错)。我想知道,我是否可以在myLis

可能不是特定于Web服务,但是

我有一个webmethod返回:

List<Tadpole> myList = getList();

return new { data = myList , count = 5 };
List myList=getList();
返回新的{data=myList,count=5};
它将其作为JSON返回

我的代码检查
myList[x].fishsticks
,它实际上不是
Tadpole
类的一部分(因此它会出错)。我想知道,我是否可以在
myList
中添加一个
fishsticks
属性,以避免出现错误,从而在返回数据时包含它


是否有另一种优雅的解决方案可以做到这一点?

在您的示例中,您必须为
蝌蚪添加
鱼竿
属性

public class Tadpole
{
    //....
    public int Fishsticks { get; set; } 
}
另外,为什么要在JSON类型中添加
.Count
属性?只是
.data.Count
,或者只是返回列表并完全跳过包装,这不是更有意义吗

我还没有检查
列表
的哪些属性最近被序列化,因此它可能没有被包括在内,但即使是这样,这样做也更有意义:

List<Tadpole> myList = getList();

return new { data = myList , count = myList.Count };

强类型是您的朋友,它将为您省去很多麻烦。

啊,很酷,我不确定是否有一些漂亮的匿名类型添加属性的方法。我会的。至于count,它实际上返回可用项目的总数,而数据只是返回前10个结果或请求的任何结果(因此它知道要在分页控件上放置多少页)@SLC好的,我可以理解。请参阅更新。(你可能会考虑给他们一些更有意义的名字,比如TooReordOrdAsabelabl和Top10Read之类的。
public class HungryTadpole : TadPole
{
    public int FishSticks { get; set; } 
}