我的命名空间中有BaseModel
和ChildModel
。我在DomainService中有操作返回它们,并且获得了一个异常,称“将KnownTypeAttribute”应用于基类。我申请了,它有效。
但是,如果我没有在我的DomainService中公开任何返回DerivedType的操作,那么我也必须在BaseModel上应用此属性,否则我会得到异常。
有人可以解释为什么会这样吗?
public class MyService: DomainServiceBase
{
public BaseModel Get()
{
return new BaseModel();
}
}
答案 0 :(得分:0)
如果WCF收到使用派生类型的消息,则会发生这种情况。在这种情况下,由于您尚未使用已知类型属性,因此WCF将不知道在哪里可以找到此子域类型,并且会发生异常。