我刚开始学习ASP MVC。到目前为止,我使用的是Web表单,我从Web表单Web应用程序中获得了很多类。使用GridViews工作正常,现在我正在寻找一个解决方案如何在MVC中显示数据库中的数据。我有很多像这样的课程:
public class zmienneWczytywanieTresci
{
public int druzynaID { get; set; }
public string Druzyna { get; set; }
public string LiczbaMeczy { get; set; }
public string LiczbaGoliStrzelonych { get; set; }
public string LiczbaGoliStraconych { get; set; }
public string Zwyciestwa { get; set; }
public string Remisy { get; set; }
public string Porazki { get; set; }
public string Punkty { get; set; }
}
public static List<zmienneWczytywanieTresci> wczytajTabele(string query, string grupa)
{
List<zmienneWczytywanieTresci> wczytajTabele = new List<zmienneWczytywanieTresci>();
string CS = ConfigurationManager.ConnectionStrings["ligiConnection"].ConnectionString;
using (SqlConnection con = new SqlConnection(CS))
{
con.Open();
SqlCommand com = new SqlCommand(query, con);
com.Parameters.AddWithValue("@Grupa", grupa);
SqlDataReader rdr = com.ExecuteReader();
while (rdr.Read())
{
zmienneWczytywanieTresci infoTabela = new zmienneWczytywanieTresci();
int druzynaID = Convert.ToInt32(rdr["Druzyna"]);
infoTabela.Druzyna = wczytajNazweKlubu(druzynaID);
infoTabela.LiczbaMeczy = rdr["LiczbaMeczy"].ToString();
infoTabela.LiczbaGoliStrzelonych = rdr["LiczbaGoliStrzelonych"].ToString();
infoTabela.LiczbaGoliStraconych = rdr["LiczbaGoliStraconych"].ToString();
infoTabela.Zwyciestwa = rdr["Zwyciestwa"].ToString();
infoTabela.Remisy = rdr["Remisy"].ToString();
infoTabela.Porazki = rdr["Porazki"].ToString();
infoTabela.Punkty = rdr["Punkty"].ToString();
wczytajTabele.Add(infoTabela);
}
return wczytajTabele;
}
}
是否可以使用foraech循环显示该列表中的数据?我正在用这个lis创建一个ViewBag ..我现在不知道该怎么做,我找不到任何解决方案。非常感谢任何建议!
答案 0 :(得分:1)
您将创建一个ViewModel(或您当前拥有的模型zmienneWczytywanieTresci),它代表您想要在屏幕上显示的内容,然后使用foreach循环显示它。
如果你是mvc的新手,我建议你按照教程进行操作,这样你就可以用mvc而不是webform来思考。
我建议将mvc音乐商店作为教程: http://www.asp.net/mvc/tutorials/mvc-music-store
对于您的问题,请查看代码的教程的第5部分: http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-5
修改
如果您正在阅读教程的第5部分,那么以
开头的代码@model IEnumerable<MvcMusicStore.Models.Album>
显示了如何遍历列表,在您的情况下
@model List<zmienneWczytywanieTresci>
将是模型,其余的是你想要显示列表的方式
答案 1 :(得分:1)
代码示例。
创建强类型视图(通过定义模型的类型)并在您想要时使用它。对于您的示例,这是一个简单的迭代:
@model IEnumerable<zmienneWczytywanieTresci>
<ul>
@foreach (var myItem in Model)
{
<li>@myItem.Druzyna</li>
<li>@myItem.LiczbaMeczy</li>
<li>@myItem.LiczbaGoliStrzelonych</li>
}
</ul>