2012-04-14 42 views
1

我在我的控制器下面的代码:添加date.now到控制器代码媒体链接里面

// GET: /Review/Create 
public ActionResult Create() 
    { 
     var userGames = db.tblGames.Where(g => g.UserName == User.Identity.Name); 
     ViewBag.GameIDFK = new SelectList(userGames, "GameID", "GameName"); 
     return View(new tblReview { UserName = @User.Identity.Name }); 
    } 

// POST:/评论/创建

[HttpPost] 
    public ActionResult Create(tblReview tblreview) 
    { 
     if (ModelState.IsValid) 
     { 
      db.tblReviews.Add(tblreview); 
      db.SaveChanges(); 
      return RedirectToAction("Index"); 
     } 

     var userGames = db.tblGames.Where(g => g.UserName == User.Identity.Name); 
     ViewBag.GameIDFK = new SelectList(userGames, "GameID", "GameName"); 
     return View(new tblReview { UserName = @User.Identity.Name }); 
    } 

,我想添加以下行代码:

 return View(new tblReview { Posted = DateTime.Now }); 

但我不知道如何将代码组合在一起。我尝试了一个If语句,但是应用程序崩溃,因为它只是向各处发送错误。

我希望将这些代码添加到代码中的原因是,撰写评论时查看者可以看到发布评论的日期。我已经在我的数据库表和模型,一个贴属性看起来是这样的:

namespace TestWebSite.Models 
{ 
    using System; 
    using System.Collections.Generic; 

    public partial class tblReview 
    { 
     public int ReviewID { get; set; } 
     public string Recomendation { get; set; } 
     public string AvoidOrBuy { get; set; } 
     public string Score { get; set; } 
     public System.DateTime Posted { get; set; } 
     public int GameIDFK { get; set; } 
     public string UserName { get; set; } 

     public virtual tblGame tblGame { get; set; } 
    } 
} 

谢谢

如果需要addtional信息,请叫我

回答

1

我admint,我不明白关系形式tblReviewNewsItem,但如果你想公开这些信息而不在ViewModel中设置它,我认为唯一的方法就是使用ViewBag。

喜欢的东西

ViewBag.NewsItem = new NewsItem() { Posted = DateTime.Now }; 

,然后从视图访问它。

我老实说会创建一个特定的viewmodel来存放视图需要的所有信息,但是如果没有其他方法,我猜这是一个替代方法。

更新

后,你做我不明白为什么这不应该工作

return View(new tblReview { UserName = @User.Identity.Name, Posted = DateTime.Now }); 
+0

噢,对不起,这是错误的表名感谢,我将编辑它,你有敏锐的变化眼睛。我从我的第一个项目得到的代码,并试图impliment它,但我忘了更改它的名称,当我发布的问题,谢谢你,会尝试这个,让你知道 – user1319420 2012-04-14 14:46:13

+0

我已经添加了它符合它的代码,所以它必须是有些事情做错了。当我运行它时,日期不会显示在页面上。有什么我必须添加到视图? – user1319420 2012-04-14 15:04:51

+1

我不知道你在做什么,但是试着简单地在视图的某个地方放一个@ Html.TextboxFor(model => model.Posted),看看html是什么。否则,你应该发布你的查看代码,所以我们可以帮助 – Iridio 2012-04-14 15:07:35