2016-10-23 3 views
0

次は私のWCFである私は私のコードとアクセスsetLandMarkをデバッグする場合)(WCFのデータメンバー値にアクセスするには?

public class Detect : IDetect 
{ 
    [DataMember] 
    string landMark1, landMark2, landMark3; 
    [DataMember] 
    int pingCounter; 

    public void setLandMark(string lm1, string lm2, string lm3) 
    { 
     landMark1 = lm1; 
     landMark2 = lm2; 
     landMark3 = lm3; 
    } 

    public void setPingCounter(int p) 
    { 
     pingCounter = p; 
    } 
} 

をコード - それは、クラスのプライベートデータメンバーに、クライアントオブジェクトによって渡されたパラメータを割り当てますが、私は他の機能setPingCounterを呼び出すとき()は、ランドマークデータメンバーをnullとして表示します。

は以下をnullに初期化されているクライアント側 -

setPingCounterがlandmark1、landmark2と呼ばれる
DetectClient proxy = new DetectClient(); 
proxy.setLandMark("google.com", "yahoo.com", "facebook.com"); 
proxy.setPingCounter(5); 

、landmark3ための私のコードであると仮定します。私は、メソッドへのすべての呼び出しが別のクライアントオブジェクトを開始すると思います。もしそうなら、どうすればこれを避けることができますか?

+0

ここには多すぎる回答があります。 ypurプロパティの割り当て方法と呼び出し方法に関する詳細情報を提供できますか? – eocron

+0

質問を編集しました –

+0

'private'メンバを' DataContract'としてマークする必要はありません。公開するメンバ 'public'メンバだけです。 –

答えて

1

WCFサービスを作成するとしますか?その場合は、サービス実装に右のServiceBehavior属性を適用することを忘れている可能性があります。デフォルトでは、契約の各要求に対してサービスが作成されます。

[ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)] 

あなたサービスの実装とあなたのサービスが収縮する要求ごとに単一になります検出するために、これを追加します。

関連する問題