1

ServiceStack ベースの API にマジック トークンを実装したいと考えています。いずれかの値がこの特別なトークンに一致するたびに、アプリケーションで特別なアクションを通知したいと考えています。この割り当てが発生する理想的な場所は SS がワイヤ形式 (JSV、JSON、SOAP など) を処理した後で、値を .NET 型にマップする前です。現時点では、このようなことを始める最善の方法について考えています。それは私が配線できるものConfigure()ですか?オーバーライドして注入する必要があるものですか?この件に関する支援や指示は、できるだけ早くいただければ幸いです。

4

1 に答える 1

1

これは ServiceStack の実装の問題ではなく、DTO の定義方法の問題だと思います。この要件を考えると、私が理解しているように、次のようなものを使用します。

 interface IOverridableDTO
 {
    Object overrideValue(Object value);
 }

 class BaseOverridableDTO : IOverridableDTO
 {
    bool doOverride {get(){return(//results of magic token check)};}

    public Object overrideValue(Object value)
    { if {doOverride} 
           return(null);  // or whatever the override needs to be
       return(value);
    }
 }

 class MyDTO : BaseOverridableDTO
 {
    // override the overrideValue() method, if necessary

    private int myDTOProperty;
    public int? MyDTOProperty {
         get() {return overrideValue((Object)myDTOProperty)}; 
         set(int value) {myDTOProperty = value;}
    }
 }

 // use as follows:
 void DoSomethingWithAnOverridableDTO(BaseOverridableDTO dtoObject)
 { ... }
于 2013-08-09T15:34:00.173 に答える