我有一個要求將屬性設置爲來自dll引用的客戶端應用程序。如何將類實例作爲參數傳遞給c中的方法#
技術部分如下解釋。
我有一個類的實例
public class test
{
public string Resultobj;
public string Result
{
get
{
return Resultobj;
}
set
{
Resultobj = value;
}
}
test obj = new test();
}
我作爲駐留在另一個組件中的參數發送到這一種方法。
callmethod(test obj);
所以在引用的程序集中我需要設置值的實例,以便它可以從應用程序訪問。 任何人都可以提供關於如何將屬性設置爲作爲參數傳遞給方法的類實例的建議。
在這裏,我添加了我所嘗試的,但它的錯誤。 :-(
public override void callmethod(ref object obj)
{
Type type = Type.GetType(obj);
PropertyInfo property = type.GetProperty("Result");
property.SetValue(type , "somevalue", null);
}
由於類名的實例在運行時是通過我不能提供的類名作爲數據類型。 我在該行收到錯誤
callmethod(test obj);
Argument '1': cannot convert from 'test ' to 'ref object'
property.SetValue(obj,「somevalue」); ? – JleruOHeP
請澄清'其錯誤' – tnw
錯以什麼方式?物業沒有設置?編譯錯誤(我可以看到代碼的一些問題,但假設他們是錯別字)?例外?你需要清楚*爲什麼*它不像你期望的那樣工作。 – James