Asp.net mvc 4 如何在MVC中绑定模型类

Asp.net mvc 4 如何在MVC中绑定模型类,asp.net-mvc-4,Asp.net Mvc 4,我正在从存储过程中检索记录,但它不会将数据绑定到视图中 下面是ModelContext类: namespace MyTesting.Models { public class TvSerialDB { public static string constr = ConfigurationManager.ConnectionStrings["TvSerialContext"].ConnectionString; SqlConnection con;

我正在从存储过程中检索记录,但它不会将数据绑定到视图中

下面是ModelContext类:

namespace MyTesting.Models
{
    public class TvSerialDB
    {
        public static string constr = ConfigurationManager.ConnectionStrings["TvSerialContext"].ConnectionString;
        SqlConnection con;
        SqlCommand cmd;
        public IEnumerable<TVSerialByGroup> tvserialgroupby(string serialname)
        {
            List<TVSerialByGroup> tvserials = new List<TVSerialByGroup>();
            using (con = new SqlConnection(constr))
            {
                cmd = new SqlCommand("pSerialListGroupBySerialName", con);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add("@SerialName", SqlDbType.VarChar, 100).Value = serialname;
                con.Open();
                SqlDataReader sdr = cmd.ExecuteReader();
                while (sdr.Read())
                {
                    TVSerialByGroup tvs = new TVSerialByGroup();
                    tvs.Series_Name = sdr["Series_Name"].ToString();
                    tvs.Image_Url_Big = sdr["Image_Url_Big"].ToString();
                    tvs.Season_No = sdr["Season_No"].ToString();
                    tvs.TotalEpisode = sdr["TotalEpisode"].ToString();
                }
            }
            return tvserials;
        }
    }
}

以下是控制器类:

public ActionResult ListAllSeason(string serial)
        {
            try
            {
                TvSerialDB tvcon = new TvSerialDB();
                List<TVSerialByGroup> tv = tvcon.tvserialgroupby(serial).ToList();                  
                return View(tv);
            }
            catch (Exception ex)
            {
                return Content(ex.Message);
            }
        }
public ActionResult listalseasure(字符串序列)
{
尝试
{
TvSerialDB tvcon=新的TvSerialDB();
List tv=tvcon.tvserialgroupby(serial.ToList();
返回视图(电视);
}
捕获(例外情况除外)
{
返回内容(例如消息);
}
}
当我运行这个应用程序时,它不会显示任何记录,也不会给出错误。
当我通过断点调试此代码时,它会将行返回到存储过程中,但在视图中它不会绑定数据

您不能将模型实例添加到集合中

while (sdr.Read())
{
    TVSerialByGroup tvs = new TVSerialByGroup();
    tvs.Series_Name = sdr["Series_Name"].ToString();
    tvs.Image_Url_Big = sdr["Image_Url_Big"].ToString();
    tvs.Season_No = sdr["Season_No"].ToString();
    tvs.TotalEpisode = sdr["TotalEpisode"].ToString();
    tvserials.Add(tvs); // add this
}
旁注:由于您正在初始化
列表
,您可以将您的方法
设置为public List tvserialgroupby(string serialname)
,然后您就不需要
.ToList()
ActionResult
方法中

while (sdr.Read())
{
    TVSerialByGroup tvs = new TVSerialByGroup();
    tvs.Series_Name = sdr["Series_Name"].ToString();
    tvs.Image_Url_Big = sdr["Image_Url_Big"].ToString();
    tvs.Season_No = sdr["Season_No"].ToString();
    tvs.TotalEpisode = sdr["TotalEpisode"].ToString();
    tvserials.Add(tvs); // add this
}