It may duplicate question, i have searched all over but couldn\'t satisfied, so i am posting here question.
I have object as (generated from entity framework),
You cannot use .ElementAt()
. If you inspect the html your generating you will see that the name
attribute has no relationship to your model.
You model needs to implemet IList<Usp_Sel_NotEnteredStringResources_Result>
and use a for
loop
@for (int i = 0; i < Model.Count; i++)
{
<tr>
<td>@Html.DisplayFor(m => m[i].name)</td>
<td>
@Html.TextBoxFor(m => m.[i]Value)
// note you hidden inputs should be inside a td element
@Html.HiddenFor(m => m[i].LanguageId)
....
</td>
</tr>
}
Alternative if the model is IEnumerable<Usp_Sel_NotEnteredStringResources_Result>
, you can use an EditorTemplate
(refer [Post an HTML Table to ADO.NET DataTable for more details on how the name
attributes must match your model property names, and the use of an EditorTemplate
)