在视图中显示值之前修改值
本文关键字:修改 显示 视图 | 更新日期: 2023-09-27 18:36:20
>我有一个提要表
Id Message Created
1 aaa 2016-02-25 12:18:51
2 bbb 2016-02-24 12:18:51
3 ccc 2015-02-25 12:18:51
我可以像这样获得所有值
public ActionResult Index()
{
using (var db = new ApplicationDbContext())
{
var feeds = db.Feeds.ToList();
return View(feeds);
}
}
我创建了一个将日期从日期时间更改为例如"1 天前"的类。这工作正常
var myTime = DateExtension.TimeAgo(DateTime.Parse("2016-02-25 12:18:51"));
我想在返回视图之前,在DateExtension.TimeAgo
的帮助下修改feed
中的所有日期。我该怎么做?
试试这个:
return View(
feeds.Select(x=>
new Feed{
Id=x.Id,
Message=x.Message,
Created=DateExtension.TimeAgo(DateTime.Parse(x.Created))
}).toList());
其中,使用相同的字段为班级提供食物
在视图中使用 FeedDisplayModel 类
public class Class1TestController
{
public ActionResult Index()
{
using (var db = new ApplicationDbContext())
{
var feeds = db.Feeds.Select(itm=>new FeedDisplayModel(itm)).ToList();
return View(feeds);
}
}
}
class Feed
{
public DateTime Created { get; set; }
public int Id { get; set;}
public string Message { get; set;}
}
class FeedDisplayModel : Feed
{
public string Ago { get { return Created.TimeAgo(); } }
public FeedDisplayModel(Feed itm){
this.Created=itm.Created;
this.Id=itm.Id;
this.Message=itm.Message;
}
}
public static class DateExtension
{
public static string TimeAgo(this DateTime dt)
{
return "your implementation of ";
}
}