在 Web API Controller 中,操作方法返回 C# 类,如下所示:
public class ShipController : ApiController
{
[HttpGet]
public Cell GetShip()
{
return new Cell(new ScriptEngine());
}
}
Cell 是我的类,继承自 Jurassic JS 库的 ObjectInstance。当我调用此操作时,ASP.NET 尝试将我的对象序列化为 XML 或 JSON,我得到System.InvalidOperationException
:“'ObjectContent`1' 类型无法序列化内容类型'application/xml; charset=utf-8 ’。” 我还尝试将 [DataContract] 属性添加到类中,正如我在此处找到的那样,如下所示:
[DataContract]
public class Cell : ObjectInstance
{
[DataMember]
public int cellId;
public Cell(ScriptEngine engine) : base(engine)
{
}
}
但我仍然得到错误。如何使操作只返回我的序列化类字段,而不是进入父类?