簡體   English   中英

無法評估表達式:Activator.CreateInstance <T> ()

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM