我試圖循環傳遞給模型對象中的視圖的數據。我想列出每個模型屬性的屬性名稱和屬性值,即使它們爲空。我一直在這裏待了幾個小時,並嘗試使用Google搜索,但無法獲得任何可行的示例。循環模型數據並列出它
我得到這個,列出所有當前對象的屬性,但不能獲取值:
@model List<object>
@foreach (var obj in Model)
{
var properties = obj.GetType().GetProperties();
foreach (var property in properties)
{
string name = null;
var value = ""
try
{
name = property.Name;
value = property.GetType().GetProperty(property.Name).GetValue(property, null).ToString();
}
catch (Exception e)
{
<p>@e</p>
}
finally
{
<p>@name - @value</p>
}
}
而控制器代碼:
RootobjectPlayerData obj = JsonConvert.DeserializeObject<RootobjectPlayerData>(jsonstring);
List<object> list = new List<object>();
list.Add(obj.data.accountinfo);
list.Add(obj.data.accountinfo.statistics);
list.Add(obj.data.accountinfo.statistics.clan);
list.Add(obj.data.accountinfo.statistics.company);
list.Add(obj.data.accountinfo.statistics.all);
list.Add(obj.data.accountinfo.statistics.historical);
list.Add(obj.data.accountinfo.statistics.team);
return View(list);
我能夠做斷點並查看每個對象中的所有數據,但是我無法在屏幕上打印出來。
你會得到任何輸出嗎? – 2015-01-04 10:54:49
是的,列出所有的屬性,然後由於我的catch塊列出了一個例外。我試着用我正在嘗試做的事情來googleing這個異常,並且無法弄清楚。 'System.NullReferenceException:對象引用未設置爲對象的實例。「# – electrometro 2015-01-04 10:57:37
你的變量名讓你失望。如果你使用更多的描述性變量,你的錯誤會更清晰。 – 2015-01-04 11:01:03