@model IEnumerable<OnlineExam.Models.CandidateExam.CandidateExam>
@{
ViewData["Title"] = "Index";
var questionList = JsonConvert.DeserializeObject<List<OnlineExam.Models.AdminQuestionModel.QuestionAndAnswers>>(TempData["questionList"].ToString());
var data = questionList as IEnumerable<OnlineExam.Models.AdminQuestionModel.QuestionAndAnswers>;
TempData.Keep();
}
<h1>Index</h1>
<p>
<a asp-action="Create">Create New</a>
</p>
@{
int count = 0;
}
@foreach (var item2 in Model)
{
@foreach (var item in data)
{
count = count + 1;
<table class="table" style="background-color:lavender">
<tbody>
<tr class="border-light"><td>Question @count : @item.Question</td></tr>
<tr class="bg-light"><td>Options : </td></tr>
<tr class="border-light"><td><input asp-for="@item2.OptionSelected" type="radio" name="counter" value="@item.OptionTwo" /> a) @item.OptionOne</td></tr>
<tr class="bg-light"><td><input asp-for="@item2.OptionSelected" type="radio" name="counter" value="@item.OptionTwo" /> b) @item.OptionTwo</td></tr>
<tr class="border-light"><td><input asp-for="@item2.OptionSelected" type="radio" name="counter" value="@item.OptionThree" /> c) @item.OptionThree</td></tr>
<tr class="bg-light"><td><input asp-for="@item2.OptionSelected" type="radio" name="counter" value="@item.OptionFour" /> d) @item.OptionFour</td></tr>
</tbody>
</table>
<br />
}
}
<div class="form-group">
<input type="submit" value="Submit" class="btn btn-primary" />
</div>
.................................................................................................
Basically i want to load data from item to item 2 ie: I want to supply values from one foreach to model(IEnumerable). How do i do tht?

You cannot bind the foreach item with the posted back items because it messes up the naming convention MVC relies on to post the data back. You will have to use For loop for this purpose.