【发布时间】:2018-06-01 14:02:19
【问题描述】:
在我的一个观点中,我有一系列子表,其中子表具有相关的查找,即不是孙表。相关查找是对代码的描述。在标准的 asp.net mvc 中,我可以指向该相关表并在该子记录中显示描述。在 .net 核心中,它显示为空白。如果我只是在子记录中显示代码,它就可以工作。
我错过了什么吗? 模型、控制器和视图代码如下:
有效的传统 asp.net mvc: 型号
Model
namespace ServeMeHR.Models
{
using System;
using System.Collections.Generic;
public partial class TeamAssignmentHistory
{
public int Id { get; set; }
public string AssignedBy { get; set; }
public System.DateTime DateAssigned { get; set; }
public int ServiceRequest { get; set; }
public int Team { get; set; }
public virtual ServiceRequest ServiceRequest1 { get; set; }
public virtual Team Team1 { get; set; }
}
}
相关控制器部分
public async Task<ActionResult> Details(int? id)
{
ViewBag.FileUp = db.ApplicConfs.Select(s => s.FileSystemUpload).FirstOrDefault();
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
ServiceRequest serviceRequest = await db.ServiceRequests.FindAsync(id);
if (serviceRequest == null)
{
return HttpNotFound();
}
return View(serviceRequest);
}
相关视图部分
<div id="tabs-2">
<table class="table">
<tr>
<th>Assigned BY</th>
<th>Date Assigned</th>
<th>Team</th>
</tr>
@foreach (var item in Model.TeamAssignmentHistories)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.AssignedBy)
</td>
<td>
@Html.DisplayFor(modelItem => item.DateAssigned)
</td>
<td>
@Html.DisplayFor(modelItem => item.Team1.TeamDescription)
</td>
</tr>
}
</table>
</div>
对于 .Net Core - 这不起作用
型号
using System;
using System.Collections.Generic;
namespace ServeMeHRCore21.Models
{
public partial class TeamAssignmentHistories
{
public int Id { get; set; }
public string AssignedBy { get; set; }
public DateTime DateAssigned { get; set; }
public int ServiceRequest { get; set; }
public int Team { get; set; }
public ServiceRequests ServiceRequestNavigation { get; set; }
public Teams TeamNavigation { get; set; }
}
}
相关控制器代码
Relevant part of controller
// GET: ServiceRequests/Details/5
public async Task<IActionResult> Details(int? id)
{
if (id == null)
{
return NotFound();
}
var serviceRequests = await _context.ServiceRequests
.Include(s => s.MemberNavigation)
.Include(s => s.PriorityNavigation)
.Include(s => s.RequestTypeNavigation)
.Include(s => s.RequestTypeStepNavigation)
.Include(s => s.StatusNavigation)
.Include(s => s.TeamNavigation)
.Include(s => s.FileDetails)
.Include(s => s.ServiceRequestNotes)
.Include(s => s.StepHistories)
.Include(s => s.TeamAssignmentHistories)
.Include(s => s.IndividualAssignmentHistories)
.AsNoTracking()
.SingleOrDefaultAsync(m => m.Id == id);
if (serviceRequests == null)
{
return NotFound();
}
return View(serviceRequests);
}
视图的相关部分
<div id="tabs-2">
<table class="table">
<tr>
<th>Assigned BY</th>
<th>Date Assigned</th>
<th>Team</th>
</tr>
@foreach (var item in Model.TeamAssignmentHistories)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.AssignedBy)
</td>
<td>
@Html.DisplayFor(modelItem => item.DateAssigned)
</td>
<td>
@Html.DisplayFor(modelItem => item.TeamNavigation.TeamDescription)
</td>
</tr>
}
</table>
</div>
以上视图显示团队描述为空白。每一个的代码几乎相同......
【问题讨论】:
标签: asp.net-core entity-framework-core