2014-02-28 37 views
3
@using System.Data 
@model DataTable 

@foreach (var row in Model.Rows) 
{ 
    @row[] // how do you cast this to a object? 
} 

如何將@row投射到Razor語法中的對象?如何將對象轉換爲剃刀語法

+1

難道你不能只用'row',而不用'@'和括號? –

回答

7

你可以只寫常見的C#代碼:

@foreach (YourType row in Model.Rows) 
{ 
    ... 
} 

@foreach (var row in Model.Rows) 
{ 
    YourType casted = (YourType)row; 
    ... 
} 

,或者如果你不知道它的澆注料:

@foreach (var row in Model.Rows) 
{ 
    YourType casted = row as YourType; 

    if (casted != null) 
    { 
     ... 
    } 
} 
0

我偶然發現這個問題今天。我使用的解決方案是使用括號:

@((YourType) row)