C#MVC将某些行传递给视图
我是mvc新手,不知道如何将一列数据传递给视图 我已使用ado.net实体模型将数据库连接到模型 在我的控制器中,我有:C#MVC将某些行传递给视图,c#,asp.net-mvc,C#,Asp.net Mvc,我是mvc新手,不知道如何将一列数据传递给视图 我已使用ado.net实体模型将数据库连接到模型 在我的控制器中,我有: public class HomeController : Controller { shdesignEntities2 _db; public ActionResult Index() { _db = new shdesignEntities2(); ViewData.Model = _db.tblKategoris.To
public class HomeController : Controller
{
shdesignEntities2 _db;
public ActionResult Index()
{
_db = new shdesignEntities2();
ViewData.Model = _db.tblKategoris.ToList();
return View();
}
}
他认为:
@foreach(var m in ViewData.Model)
{
<p>Kategori Ad :</p><p> @m.kategori_ad </p>
}
@foreach(ViewData.Model中的var m)
{
卡特戈里广告:@m.Kategori_广告
}
当我这样做时,我将整个表数据传递给视图,在视图中我只需要一列信息
我怎样才能只传递来自kategori_ad列的数据 您可以使用LINQ找到所需的对象,然后将其传递给视图,执行以下操作:
public ActionResult Index()
{
_db = new shdesignEntities2();
ViewData.Model = _db.tblKategoris.Select(x => x.kategori_ad).ToList();
return View();
}
这样,ViewData.Model
只有与linq查询匹配的对象
在这里,您可以找到有关Linq的更多信息,以从Controller中的C#::中的集合检索数据
ViewData["Rows"] = (from c in _db.tblKategoris
select c.kategori_ad).ToList();
看法
@foreach(列表)视图数据[“行”]中的var m)
{
卡泰戈里广告:@m
}
使用选择:
ViewData.Model = _db.tblKategoris.Select(x => x.kategori_ad).ToList();
您可以查看ViewModels。同样,通过这种方式,您可以使用暴露的数据的较小部分 比如说
public class KategoriViewModel
{
public IEnumerable<Kategori> Kategoriler { get; set; }
}
鉴于
@model KategoriViewModel
@foreach(var m in ViewData.Model)
{
<p>Kategori Ad :</p><p> @m.kategori_ad </p>
}
@model KategoriViewModel
@foreach(ViewData.Model中的var m)
{
卡特戈里广告:@m.Kategori_广告
}
ViewData?我认为,如果教育MVC“新手”,我们应该推广强类型视图:
public ActionResult Something()
{
var model = new KategoriViewModel;
model.Kategoriler = your query..;
return View(model);
}
@model KategoriViewModel
@foreach(var m in ViewData.Model)
{
<p>Kategori Ad :</p><p> @m.kategori_ad </p>
}