91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

setvalue屬性如何正確的在C# 中使用

發布時間:2021-01-20 11:54:08 來源:億速云 閱讀:1243 作者:Leah 欄目:開發技術

本篇文章為大家展示了setvalue屬性如何正確的在C# 中使用,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

C#

public virtual void SetValue (object obj, object value, object[] index);

參數

obj Object

將設置其屬性值的對象。

value Object

新的屬性值。

index Object[]

索引化屬性的可選索引值。 對于非索引化屬性,該值應為 null。

實現

SetValue(Object, Object, Object[])

異常

ArgumentException

index 數組不包含所需的參數類型。

或 找不到該屬性的 set 取值函數。

或 - value 無法轉換為 PropertyType的類型。

TargetException

在適用于 Windows 應用商店應用的 .NET 或可移植類庫中,改為捕獲 Exception。

該對象與目標類型不匹配,或者某屬性是實例屬性但 obj 為 null。

TargetParameterCountException

index 中的參數數量與索引屬性采用的參數數量不匹配。

MethodAccessException

在適用于 Windows 應用商店應用的 .NET 或可移植類庫中,改為捕獲基類異常 MemberAccessException。

試圖非法訪問類中的私有或受保護方法。

TargetInvocationException

設置屬性值時出錯。 例如,為一個索引屬性指定的索引值超出范圍。 InnerException 屬性指示出錯的原因。

例子

Dictionary<string, string> dic = new Dictionary<string, string>();
  foreach (Control control in this.Controls )//獲取控件中所有值,添加到字典中
  {
  if (control is TextBox ||control is ComboBox ||control is DateTimePicker )
  {
   dic.Add (control.Name, control.Text);
  }
  }
  PropertyInfo[] propertys = incomingnews.GetType().GetProperties();
  foreach (PropertyInfo property in propertys)//運用propertyinfo的映射方法,給實體類incomingnews的所有屬性賦值。
  {
  for (int i = 0; i<dic.Count; i++)
  {
   property.SetValue(incomingnews, dic[property.Name].ToString(), null);
  }
  }

之前有個小錯誤一直弄不出來,后來看了錯誤提示“index 數組不包含所需的參數類型。

或 找不到該屬性的 set 取值函數。

或 value 無法轉換為 PropertyType的類型。”

發現自己想要賦值的實體類不是實體的屬性,而是實體的字段,所以setvalue方法就捕捉不到我想要賦值的這些字段,只需要將這些字段設置為自動屬性即可。

補充:C# Property.SetValue()利用反射給某個泛型對象的屬性賦值的問題

問題描述:

在一個泛型方法中,實例化一個泛型對象后,利用反射獲取該泛型中的所有屬性,再給該對象的這些屬性賦值,打斷點發現,泛型對象被實例化出來了,沒有問題;所要賦值的屬性值也沒有問題,但調用Property.SetValue()后,泛型對象中的值就是賦不上。

上述內容就是setvalue屬性如何正確的在C# 中使用,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

淮阳县| 江口县| 文登市| 拜城县| 墨玉县| 雷山县| 长宁县| 高邮市| 苗栗县| 巨野县| 体育| 崇仁县| 渭源县| 开原市| 保靖县| 游戏| 讷河市| 汝城县| 宁明县| 雅江县| 镇原县| 澎湖县| 鸡泽县| 绍兴县| 嵊泗县| 沛县| 杭锦旗| 手游| 聂拉木县| 类乌齐县| 镇坪县| 马山县| 安远县| 涿鹿县| 师宗县| 平阳县| 隆林| 长岛县| 丰镇市| 霍城县| 宁乡县|