2010-03-23 8 views
5

मैं कुछ इस तरह कोशिश कर रहा हूँ:क्या डब्लूसीएफ अनुबंध एकाधिक कॉलबैक इंटरफेस का उपयोग कर सकता है?

[ServiceContract (
    CallbackContract = typeof (CallbackContract_1), 
    CallbackContract = typeof (CallbackContract_2), 
    CallbackContract = typeof (CallbackContract_3)) 
] 
public interface SomeWcfContract { 

मैं जानता हूँ कि यह इस तरह काम नहीं करता। क्या एक अनुबंध अभी भी कई कॉलबैक इंटरफेस का उपयोग करने का एक तरीका है?

उत्तर

6

एक सेवा अनुबंध केवल एक कॉलबैक अनुबंध निर्दिष्ट कर सकते हैं कि अगर अनुबंध सभी कॉलबैक अनुबंध अनुबंध के खुद आधार अनुबंध द्वारा परिभाषित के subinterface है।

interface ICallbackContract1 
{...} 

interface ICallbackContract2 : ICallbackContract1 
{...} 

[ServiceContract(CallbackContract = typeof(ICallbackContract1))] 
interface IMyBaseContract 
{...} 

[ServiceContract(CallbackContract = typeof(ICallbackContract2))] 
interface IMySubContract : IMyBaseContract 
{...} 

या

interface ICallbackContract1 
{...} 
interface ICallbackContract2 
{...} 
interface ICallbackContract3 : ICallbackContract2,ICallbackContract1 
{...} 

[ServiceContract(CallbackContract = typeof(ICallbackContract1))] 
interface IMyBaseContract1 
{...} 
[ServiceContract(CallbackContract = typeof(ICallbackContract2))] 
interface IMyBaseContract2 
{...} 
[ServiceContract(CallbackContract = typeof(ICallbackContract3))] 
interface IMySubContract : IMyBaseContract1,IMyBaseContract2 
{...} 

see for more details

+0

आह, मैंने सोचा था कि उप इंटरफेस आधार इंटरफ़ेस की तरह कुछ मतलब ... यह विपरीत बल्कि है। अब यह अचानक एक बहुत सारी समझ में आता है। और यह पूरी तरह से मेरे नियोजित ऐप डिजाइन से अधिक फिट बैठता है। – mafu

+0

@ माफुटक्ट: शुभकामनाएं। – garik

+0

@garik अच्छा जवाब! यह ऐसा कुछ नहीं है जो सहज या खोजने में आसान है, लेकिन यह बताए अनुसार काम करता है। – SouthShoreAK

संबंधित मुद्दे