13

さまざまな種類を格納/取得できる WCF サービスの構築を検討しています。次の例は実行可能であり、許容できる設計と見なされますか?

[ServiceContract]
public interface IConnection
{        
   [OperationContract]
    IObject RetrieveObject(Guid ObjectID); 

   [OperationContract]
    Guid StoreObject(IObject NewObject); 


}

[ServiceContract]
[ServiceKnownType(IOne)]
[ServiceKnownType(ITwo)]
public interface IObject
{
    [DataMember]
    Guid ObjectID;

}

[ServiceContract]
public interface IOne:IObject
{
    [DataMember]
    String StringOne;

}

[ServiceContract]
public interface ITwo:IObject
{
    [DataMember]
    String StringTwo;

}

このサービスを使用する場合、子の型を StoreObject メソッドに渡し、RetrieveObject メソッドから子の型として取得できる必要があります。

より良いオプションはありますか?

ありがとう、ロブ

4

1 に答える 1