2016-06-20 35 views
-2

我有一個WPF應用程序來傳遞類名和namespace.I想創建該類的對象並調用一個函數。 上傳命名空間爲ServiceReference1,類名爲CrewServiceClient作爲字符串從文本框中傳遞。 我要像下面通過傳遞類名稱和命名空間來調用函數

ServiceReference1.CrewServiceClient cs = new ServiceReference1.CrewServiceClient(); 

創建對象和使用對象「CS」之類cs.ClientCredentials.UserName.UserName

回答

1

你嘗試Activator.CreateInstance已經調用函數?

Activator.CreateInstance("YourAssembly", "CrewServiceClient"); 

但你應該定義使用方法如下創建實例的接口:

interface IServiceClient { 
    string UserName; 
} 

class CrewServiceClient : IServiceClient { 
    string UserName; 
} 

然後你就可以做到以下幾點:

var instance = (IServiceClient)Activator.CreateInstance("YourAssembly", "CrewServiceClient"); 
var userName = instance.UserName; 
+0

「YourAssebly」是指命名空間? – Raveesh

+0

我剛剛編輯我的帖子來說清楚。 – rbr94