更多
2018年04月07日 13点34分 CarlGK

有一个教师方法, 无需登录, 打开页面就可以看到所有学生信息,运行弹出空值错误, 

部分代码如下

//查看所有学生信息   StudentServiceImpl类
        public List<Model_student> QueryStudentList(Model_student student) {
           List<Model_student> list = new List<Model_student>();
            SqlParameter[] obj = { };
            string sqlCheckstudent = string.Format("select * from student");
            SqlDataReader dr = SqlHelper.ReturnSqlDataReader(sqlCheckstudent, CommandType.Text, obj);
            while (dr.Read())//循环次数不固定,不能用for
            {
                Model_student stu = new Model_student();
                stu.Id = Int32.Parse(dr["id"].ToString());
                stu.Accoutname = dr["accoutname"].ToString();
                stu.Password = dr["password"].ToString();
                stu.Score = Int32.Parse(dr["score"].ToString());
                stu.Sex = dr["sex"].ToString();
                stu.Address = dr["address"].ToString();
                list.Add(stu);
            }
            SqlHelper.cn.Close();
            return list;
        }
//查看所有学生信息   StudentController类
        public ActionResult OpenQueryStudentList()
        {
            StudentService studentService = new StudentServiceImpl();
            Model_student student = new Model_student();
            List< Model_student> stu = studentService.QueryStudentList(student);
            if (stu != null)
            {
                TempData["message"] = "成功查看所有学生成绩!";
                TempData["student"] = stu;
                return View("Teacher");
            }
            else
            {
                Console.WriteLine("操作失败");
                return View("Login");
            }
        }
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<%@ Import Namespace="MvcApplication2.Models" %>

<!DOCTYPE html>

<html>
<head runat="server">
    <meta name="viewport" content="width=device-width" />
    <title>Teacher</title>
</head>
<body>
    <div>
        <form action="/Student/OpenQueryStudentList" method="post">
         <div>
           <% List<Model_student> student = ViewData["student"] as List<Model_student>; %>
        <table>
            <tr>
                <th>id</th>
                <th>用户名</th>
                <th>密码</th>
                <th>分数</th>
                <th>性别</th>
                <th>地址</th>
            </tr>
            <% foreach (var stu in student){ %> 
            <tr>
                <td><%=((Model_student)TempData["student"]).Id %></td>
                <td><%=((Model_student)TempData["student"]).Accoutname %></td>
                <td><%=((Model_student)TempData["student"]).Password %></td>
                <td><%=((Model_student)TempData["student"]).Score%></td>
                <td><%=((Model_student)TempData["student"]).Sex %></td>
                <td><%=((Model_student)TempData["student"]).Address %></td>
            </tr>
            <% } %>
        </table>
        </div>
        </form>
    </div>
</body>
</html>


自己试着做的练习项目, 其实有些地方还有些不懂, 一直排查不出来...大神帮忙看下~谢谢啦



修改

MVC html C# 编程开发语言 修改

修改

应答 (下拉快捷留言)

知道“一起帮”的协助流程么?不要搞错哟:应答握手再远程……

2018年04月08日 08点30分 修改
确认查看

因为每次总结被查看,总结的作者都会获得 帮帮点 奖励。

所以,只有注册用户才能查看总结。

否则,该功能无法成功实现(以杜绝作弊)。敬请谅解!

CarlGK
2018年04月08日 20点47分 --- 第 1 楼 --- 小威Q.E.D

学习了,不过帮不了您解决问题,有点不好意思 回复

2018年04月07日 23点38分 --- 第 6 楼 ---
该应答已被转化成总结,O(∩_∩)O~
2018年04月07日 22点27分 --- 第 5 楼 ---
抢: 这就是我的菜……
2018年04月07日 20点10分 --- 第 4 楼 ---

--- 回复: ---

还是不行呢, 不过谢谢你啦, 我再研究研究~~
2018年04月07日 18点49分 --- 第 3 楼 ---

--- 回复: ---

TempData["student"]改为stu试试,因为您使用了foreach每一个student的信息都存储在stu中。
2018年04月07日 18点38分 --- 第 2 楼 ---
嗯嗯,谢谢啦, 刚刚我把<% List<Model_student> student = ViewData["student"] as List<Model_student>; %> 中的ViewData改成了TempData ,就不报错了, 只是又出现了新的错误如图, 是关于前台遍历获取list的,作为小白我这个都是边猜边写的,应该foreach循环那边有哪里不对, 这个您了解不?
2018年04月07日 18点23分 --- 第 1 楼 ---
不好意思呢,我没有怎么使用MVC,根据提示应该是<% List<Model_student> student = ViewData["student"] as List<Model_student>; %>,创建实例失败了,已经帮您@其他帮忙了,我这边再研究一下,或者可以尝试使用ViewResult进行传值吗?
帮帮币 兑换中……

2018年09月22日 10点51分
阿卡林 兑换了 5

2018年09月22日 09点18分
mingliu 兑换了 5

2018年09月22日 08点55分
xxred 兑换了 5

2018年09月21日 23点26分
wyy 兑换了 1

2018年09月21日 14点40分
dajatpyu 兑换了 5

我要兑换
关键字



反馈