我有一个配置页面,用于配置如下所示的API请求:
但是,如果尚未在另一个配置页面中配置“ Klant”,则无法配置API请求。因此,我想在调用模态时检查视图中“ Klant”是否为空。如果“ Klant”为空,我想弹出一个错误消息警报,如果“ Klant”不为空,我想显示上面的模型。
模态由一个带有以下代码的按钮调用:
<a href="#" class="btn btn-primary" data-toggle="modal" data-target="#myModal">Voeg API toe</a>
比它称为这种模式:
<!--MODAL-->
<div class="modal fade" id="myModal">
<div class="modal-dialog" style="width: 20%;">
<div class="modal-content">
<div class="modal-header">
<a href="#" class="close" data-dismiss="modal">×</a>
<h3 class="modal-title">API toevoegen</h3>
</div>
<div class="modal-body">
<form id="myForm">
<p><b>Klant</b></p>
<p>@Html.DropDownList("Company.CompanyName", (IEnumerable<SelectListItem>)ViewBag.selectItemListCompany, new { @class = "form-control" })</p>
<p><b>Mapping</b></p>
<p>@Html.DropDownList("MappingName.Name", (IEnumerable<SelectListItem>)ViewBag.selectItemListMapping, new { @class = "form-control" })</p>
<p><b>API</b></p>
<p>@Html.TextBoxFor(model => model.FirstOrDefault().ApiName, new { @class = "form-control", @placeholder = "Naam", autocomplete = "off", Value = "" })</p>
<p>@Html.TextBoxFor(model => model.FirstOrDefault().ApiURL2, new { @class = "form-control", @placeholder = "URL", autocomplete = "off", Value = "" })</p>
<p><b>Output</b></p>
<p>
JSON
@Html.RadioButtonFor(model => model.FirstOrDefault().ResponseType, "json", new { Checked = "checked" })
XML
@Html.RadioButtonFor(model => model.FirstOrDefault().ResponseType, "xml")
</p>
</form>
</div>
<div class="modal-footer">
<a href="#" class="btn btn-default" data-dismiss="modal">Cancel</a>
<input type="reset" value="Submit" class="btn btn-success" id="btnSubmit" />
</div>
</div>
</div>
</div>
“ Klant”的DropDownList充满了一个名为ViewBag.selectItemListCompany的ViewBag。我当时想检查此列表是否为空,我使用以下代码进行了此操作:
if(ViewBag.selectItemListCompany == null)
但是这不起作用
还有其他建议吗?
预先感谢
答案 0 :(得分:0)
您也可以尝试
第一个IEnumerableselectItemListCompany转换为列表,如下所示:
var data = selectItemListCompany.ToList();
然后检查if(data.count> 0)的计数并执行所需的逻辑。
答案 1 :(得分:0)
我当时想检查此列表是否为空,我这样做是为了 以下代码:
if(ViewBag.selectItemListCompany == null)
该代码正在检查列表是否为空,而不是空。如果要检查列表是否为空,则需要查看列表是否包含任何元素。我们可以为此使用.Any()
并取反结果。
@if (ViewBag.selectItemListCompany == null || !ViewBag.selectItemListCompany.Any())
{
}