我有飞机和FleetItem模型的模型:ASP.net核心:<select>许多实体
Aircraft.cs:
public class Aircraft : IDbEntity
{
[Key]
public int Id { get; set; }
public string Type { get; set; }
public int? MaxAltitude { get; set; }
public int? MaxSpeed { get; set; }
public int? NOfFirstClassSeats { get; set; }
public int? NOfBusinessClassSeats { get; set; }
public int? NOfEconomyClassSeats { get; set; }
}
FleetItem.cs:
public class FleetItem : IDbEntity
{
[Key]
public int Id { get; set; }
public string RegNumber { get; set; }
public int AirplaneId { get; set; }
[ForeignKey("AirplaneId")]
public virtual Aircraft Airplane { get; set; }
}
所以,实际上 - FleetItem包含飞机的外键和飞机的注册号码(注册号码是唯一的)。
查看Index.cshtml,我现在有:
@model Core.Models.FleetItem
@{
ViewData["Title"] = $"Add new plane to fleet";
}
<h2>@ViewData["Title"]</h2>
<form method="post" asp-controller="Fleet" asp-action="Add" asp-antiforgery="true">
<!-- todo add plane select -->
<div class="form-group">
<label asp-for="RegNumber" class="control-label">Registration number:</label>
<input asp-for="RegNumber" class="form-control" type="text" />
<span asp-validation-for="RegNumber"></span>
</div>
<div class="form-group">
<input type="submit" value="Add" class="btn btn-default" />
</div>
</form>
我需要FleetItem飞机的链接。
解决方案,我发现:选择所有飞机和他们通过进入视野并输出使用<select>
。
该解决方案适用于当我有几架飞机。但是,如果我有1000多架飞机?这将是太大的<select>
名单。所以,我想到任何返回飞机的搜索。这将是非常棒的。但是,如何实现这一点?我认为解决方案存在但找不到它。
或者你可以建议最好的解决办法?
是的,这是我需要的,谢谢。但你可以帮我与未捕获的错误:没有select2/compat/inputData? Google说我需要使用完整版本的select2,但是来自bower的select2 4.0.3不包含完整版本。 – Evgeniy175
答案:使用'
不客气,我对select2自己没有太多的经验,所以无法帮助你:) –