2014-01-21 50 views
-3

我必须迭代通过从数据库中获得的一个对象基类型的属性,并且我必须检查是否有任何属性我要snull。下面是一些代码:通过一个对象基类型的属性循环

req = "select * from Ga_Periodes_Absence"; 
var resultat = Session.CreateSQLQuery(req).List<object>(); 
foreach (var elem in resultat) 
{ 
    int i = 0; 

    i++; 
} 

resultat包含我要检查,如果其中的任何属性为空对象列表。请任何帮助。

+0

有一些在这个现场解答解决这个问题,像【如何通过一类的所有属性循环?](http://stackoverflow.com/questions/531384/how-to-loop - 通过-所有最属性对的一类)。请在发布前做一些调查。 – rae1

+0

当你使用foreach时,你显然不需要索引,如果真的有机会,你不会在循环语句中创建它 –

+0

Andrei先生,我知道为什么我把索引放在这里,因为我使用它,代码是不完整。 – ucef

回答

1
bool result = true;  
foreach (var elem in resultat) 
{ 
    foreach(var prop in elem.GetType().GetProperties()) 
    { 
     if(prop.GetValue(elem) == null) result = false; 
    } 
} 
+0

问题在于它们是基类“System.Object”的retyrn属性而不是我从数据库获得的属性 – ucef