私はNerdDinnerを働かせようとしているが、少し問題がある。Nerdの夕食、おそらく極端な騒ぎの質問、リストの夕食
私はindexのactionResultが発生したところで素早く監視し、dinnerRepositoryの項目がasignment演算子の右側にあることを確認しました。
しかし、コードの次の行に進むと、夕食はビューに渡され、レコードセットは含まれません。
誰かが私が間違っているところを指摘できますか。
結果、ページは完全にレンダリングされますが、レコードは表示されません。
namespace NerdDinner.Controllers
{
public class DinnersController : Controller
{
DinnerRepository dinnerRepository = new DinnerRepository();
// GET: /Dinners/
public ActionResult Index()
{
var dinners = dinnerRepository.FindUpcomingDinners().ToList();
return View("Index", dinners);
}
// GET: /Dinners/Details/2
public ActionResult Details(int id)
{
Dinner dinner = dinnerRepository.GetDinner(id);
if (dinner == null)
return View("NotFound");
else
return View("Details", dinner);
}
}
}
そしてここビューコードも
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<NerdDinner.Models.Dinner>>" %>
<asp:Content ID="Main" ContentPlaceHolderID="MainContent" runat="server">
<h2>Upcoming Dinners</h2>
<ul>
<% foreach (var dinner in Model)
{%>
<li>
<%= Html.Encode(dinner.Title)%>
on
<%= Html.Encode(dinner.EventDate.ToShortDateString())%>
@
<%= Html.Encode(dinner.EventDate.ToShortTimeString())%>
</li>
<% } %>
</ul>
</asp:Content>
モデルコードも
パブリッククラスDinnerRepository {プライベートNerdDinnerDataContextデシベル=新しいNerdDinnerDataContext()です。
// Query Methods
public IQueryable<Dinner> FindAllDinners()
{
return db.Dinners;
}
public IQueryable<Dinner> FindUpcomingDinners()
{
return from dinner in db.Dinners
where dinner.EventDate > DateTime.Now
orderby dinner.EventDate
select dinner;
}
public Dinner GetDinner(int id)
{
return db.Dinners.SingleOrDefault(d => d.DinnerID == id);
}
// Insert/Delete Methods
あなたが「DinerRepository」:) – scottm
「DinnerRepository」を使用していないので、多分それは私が非常に非常に恥ずかしいですが、コードには何の問題もありません。それはdbのデータと関係がある。 あなたのサポートに感謝します –