如何解决不是使用 single() 返回表中的一个项目,我如何返回与列表中相同 ID 关联的多个项目?
我正在创建一个联系人管理数据库作为一个项目,并使用剃刀页面创建了联系人和活动表。在个人联系人的页面上,我想返回与其 ID 相关的所有活动的列表,而不仅仅是单个活动。这是我的设置方式:
public Contact Contact { get; set; }
public List<Activity> Activity { get; set; }
public async Task<IActionResult> OnGetAsync(int? id)
{
if (id == null)
{
return NotFound();
}
Contact = await _context.Contact
.Include(c => c.Location)
.Include(c => c.Role)
.Include(c => c.State).FirstOrDefaultAsync(m => m.ContactID == id);
Activity = await _context.Activity
.Include(c => c.ActivityTask)
.Where(m => m.ContactID == id)
.ToListAsync();
if (Contact == null)
{
return NotFound();
}
return Page();
}
<dt class="col-sm-2">
@Html.displayNameFor(model => model.Activity.Single().Status)
</dt>
<dd class="col-sm-10">
@Html.displayFor(model => model.Activity.Single().Status)
</dd>
显然 single 会抛出异常,但我不确定用什么来替换它。我想也许 Where() 或 FindAll() 但在我当前的设置中都不起作用。
解决方法
您必须在打开剃刀代码以呈现活动列表之间做出选择:
#include <iostream>
using namespace std;
int main() {
int n;
cin>>n;
int odd;
int j =0;
for(int i = 1; i<=n;i++){
if(i%2!=0){
for( j; j<(5*i);j++){
odd +=1;
cout<<odd<<" ";
}
cout<<endl;
}
if(i%2==0){
for( j =5*i; j>(5*(i-1));j--){
odd =j;
cout<<odd<<" ";
}
}
}
}
或使用 @foreach (var item in Activity)
{
<...
}
并仅呈现第一个。
问候。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。