Visual Studio ASP .NETでのMVCセッション
MYスーパーバイザコントローラオンラインでのプロジェクト名と監督の説明を取得したい
:
public ActionResult SupervisorDashboard()
{
var message = TempData["message"] as string;
var name = (from s in dc.Supervisors
where s.sup_email == message
select s.sup_fname).SingleOrDefault();
ViewBag.username = name;
return View();
}
public ActionResult ViewProject()
{
var message = TempData["message"] as string;
var name = (from s in dc.Supervisors
where s.sup_email == message
select s.sup_fname).SingleOrDefault();
ViewBag.username = name;
var supid= (from s in dc.Supervisors
where s.sup_email==message
select s.sup_ID).SingleOrDefault();
var projectdata = (from s in dc.OfferedProjects
where s.FK_sup_ID==supid
select s);
return View(projectdata);
}
私のスーパーバイザーモデル:
public class SupervisorModel
{
public Supervisor supervisor { get; set; }
public OfferedProject offerproject { get; set; }
}
マイ表示:
@model IEnumerable<FYPManagment.Models.SupervisorModel>
@using FYPManagment;
@{
List<OfferedProject> projectdata = (List<OfferedProject>)ViewData["projectdata"];
ViewBag.Title = "ViewProject";
Layout = "~/Views/Shared/_SupervisorDashboarLayout.cshtml";
}
@foreach (var item in Model)
{
<tr>
<td>@item.offerproject.proj_title</td>
<td>@item.offerproject.proj_description</td>
<td>
<a href="#">Send Request</a>
</td>
</tr>
}
マイホームコントローラー:
TempData["message"] = email;
//Session["user"] = email;
if (type == "supervisor")
{
return RedirectToAction("SupervisorDashboard", "Supervisor");
}
私のスーパーバイザーダッシュボードアクションは、オンラインユーザーの電子メールを取得しているが、ビュー・プロジェクト・アクションで同じコードが機能していません。私はあなたの貴重な時間に非常に感謝します。
コードを読みやすいようにフォーマットすると、どこにでもランダムな字下げが表示され、読めるようにすることができます(これは、他人がやりたいことです)。今回はあなたのために編集しました。 – Igor
'ViewProject'にリダイレクトするコードを投稿してください。 –