![](/img/trans.png)
[英]Activator.CreateInstance(string) and Activator.CreateInstance<T>() difference
[英]Could not evaluate expression: Activator.CreateInstance<T>()
我正在使用Activator.CreateInstace()創建一個通用實例。 但是當我使用它創建對象的實例時:
public class SelectStageSaveData
{
public string GlobalPartnershipPoints { get; set; }
}
在調試代碼並嘗試查看GlobalPartnershipPoints時,出現消息“無法評估表達式”。 我以為在這種情況下,此字符串的值是“空”的,但我無法獲得任何值。 有人知道發生了什么嗎? 提前致謝。
更新:
我創建實例的代碼:
if (!isolatedStorage.FileExists(file))
{
this.SaveData<T>((T)Activator.CreateInstance(typeof(T)), file);
}
要么
if (!isolatedStorage.FileExists(file))
{
this.SaveData<T>(Activator.CreateInstance<T>(), file);
}
兩者的結果相同。
我以為在這種情況下,此字符串的值為“空”
在初始化屬性之前,默認情況下該值將為null
。 如果使用私有字段:
public class SelectStageSaveData
{
private string _GlobalPartnershipPoints = "";
public string GlobalPartnershipPoints
{
get { return _GlobalPartnershipPoints;}
set { _GlobalPartnershipPoints = value; }
}
}
然后,您將默認獲得“”。
希望能幫助到你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.