由於我是WCF的新手,這可能是一個基本問題。我甚至不知道這是否得到支持。從代理客戶端將參數傳遞給WCF服務Ctor
我有一個名爲MyCustomService的WCF服務。我說在我的客戶端解決方案這個服務引用,現在我可以通過調用創建一個代理對象:
MyCustomServiceClient myClient = new MyCustomServiceClient();
myClient.GetData();
myClient.GetData();
怎麼,我佈置我的服務,這樣我可以代理實例創建過程中傳遞參數即
MyCustomServiceClient myClient = new MyCustomServiceClient("SomeString");
我注意到我創建的每個方法調用都會創建一個MyCustomService的新實例(即,我可以在MyCustomService Ctor上獲得斷點)。因此,我希望創建代理對象(即SomeString)時通過的值可以存在於我所做的所有調用中,直到myClient的生存期爲止。
任何想法?
一個屬性,什麼是你想在構造函數中設置客戶端?您試圖爲每個客戶設置獨特的價值? – Tim
是的。我傳遞的字符串對於每個客戶都是獨一無二的。 –
你最好的選擇就是在米蘭在下面的回答中寫下''InstanceContextMode.PerSession'。您不會在構造函數中設置值,因此您需要在客戶端進行的第一個調用時傳遞它(可以是特定的調用來設置值,也可以檢查是否已在每次調用時設置該值) 。如果您可以提供更多的設計要求,以便您爲此需要/需要這樣做,我們可能會提供更好的答案。 – Tim