2013-09-30 29 views
-2

這裏是我的代碼,其中我得到錯誤:「方法只能在Type堪稱爲哪種類型.IsGenericParameter是真的。「異常而修剪的對象中的所有字符串屬性 - 方法只能在Type呼籲其Type.IsGenericParameter是真的

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     CustomInfo obj = new CustomInfo(); 
     var stringProperties = obj.GetType().GetProperties() 
         .Where(p => p.PropertyType == typeof(string)); 

     foreach (var stringProperty in stringProperties) 
     { 
      string currentValue = (string)stringProperty.GetValue(obj, null); 
      stringProperty.SetValue(obj, currentValue.Trim(), null); 
     } 
    } 

} 

public class CustomInfo 
{ 
    int UserId { get; set; } 
    string UserName { get; set; } 
    string Country { get; set; } 
    string City { get; set; } 
    DateTime DOB { get; set; } 
    bool isActiveUser { get; set; } 

} 

我無法修剪對象中的所有字符串屬性。

+2

您提供不說明問題的代碼。 (我剛剛把它放入一個控制檯應用程序,並能正常工作。) –

+0

嗨喬恩,我執行該代碼,但它不是返回字符串的屬性信息和我檢查obj.GetType()拋出我的錯誤。 – user2752023

+0

請顯示完整的堆棧跟蹤。 – poke

回答

0

告訴你的代碼執行foreach循環零周時間,因爲你的屬性是不公開的。

如果解決這個問題,你是因爲你讀屬性getter一個null串獲得,而不是null引用異常,然後調用nullTrim()

有似乎沒有比這更多的問題與您提供的代碼。如果您需要其他代碼的幫助,請更新您的問題。

相關問題