为什么视图无法在客户端显示学生数据,而它是ASP.NET MVC



首先,这些是模型类:

public class Student
{
public int ID;
public string Name;
public string RollNo;
public string Branch;
public string Course;
public string Year;
}
public class StudentData
{
public IEnumerable<Student> Data()
{
List<Student> StudentsList = new List<Student>();
Student[] SArr = new Student[4];
SArr[0].ID = 1;
SArr[0].Name = "Narender";
SArr[0].RollNo = "0177EC161067";
SArr[0].Branch = "EC";
SArr[0].Course = "B.E";
SArr[0].Year = "IV";
StudentsList.Add(SArr[0]);
SArr[1].ID = 2;
SArr[1].Name = "Sandeep";
SArr[1].RollNo = "0177CS161001";
SArr[1].Branch = "CSE";
SArr[1].Course = "B.E";
SArr[1].Year = "IV";
StudentsList.Add(SArr[1]);
return StudentsList;
}
}

这就是控制器:

public class MainController : Controller
{
public ActionResult Index()
{
StudentData students = new StudentData();
IEnumerable<Student> s = students.Data();
return View(s.ToList());
}
}

观点是这样的:

@model IEnumerable<FirstApp.Models.Student>
<table width="400">
<th>ID</th>
<th>Name</th>
<th>Roll Number</th>
<th>Branch</th>
<th>Course</th>
<th>Year</th>
@foreach (var s in Model)
{
<tr>
<td>@s.ID</td>
<td>@s.Name</td>
<td>@s.RollNo</td>
<td>@s.Branch</td>
<td>@s.Course</td>
<td>@s.Year</td>
</tr>``
}
</table>

我得到一个错误:

对象引用未设置为对象的实例。

描述:在执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误以及错误在代码中的来源的更多信息。

异常详细信息:System.NullReferenceException:对象引用未设置为对象的实例。

来源错误:

第26行:SArr[0]。ID=1;

这是更新后的视图

@using FirstApp.Models
@model IEnumerable<Student>
<table width="400">
<tr>
<th>ID</th>
<th>Name</th>
<th>Roll Number</th>
<th>Branch</th>
<th>Course</th>
<th>Year</th>
</tr>
@foreach (var s in Model)
{
<tr>
<td>@s.ID</td>
<td>@s.Name</td>
<td>@s.RollNo</td>
<td>@s.Branch</td>
<td>@s.Course</td>
<td>@s.Year</td>
</tr>
}
</table>

更新型号为:

public class Student
{
public int ID;
public string Name;
public string RollNo;
public string Branch;
public string Course;
public string Year;
}
public class StudentData
{
public IEnumerable<Student> Data()
{
return new List<Student>{
new Student{
ID = 1,
Name = "Narender",
RollNo = "0177EC161067",
Branch = "EC",
Course = "B.E",
Year = "IV"
},
new Student{
ID = 2,Name = "Sandeep",
RollNo = "0177CS161001",
Branch = "CSE",
Course = "B.E",
Year = "IV"
}
};
}
}

不要使用数组和列表。

更新你的模型类如下:

using System;
using System.Collections.Generic;
namespace FirstApp.Models
{
public class Student
{
public int ID;
public string Name;
public string RollNo;
public string Branch;
public string Course;
public string Year;
}
public class StudentData
{
public IEnumerable<Student> Data()
{
var StudentsList = new List<Student>()
{
new Student(){
ID = 1,
Name = "Narender",
RollNo = "0177EC161067",
Branch = "EC",
Course = "B.E",
Year = "IV"
},
new Student(){
ID = 2,
Name = "Sandeep",
RollNo = "0177CS161001",
Branch = "CSE",
Course = "B.E",
Year = "IV"
}
};
return StudentsList;
}
}
}

最新更新