Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 无法在页面上获取查询元素_Asp.net Core_Razor_Selection - Fatal编程技术网

Asp.net core 无法在页面上获取查询元素

Asp.net core 无法在页面上获取查询元素,asp.net-core,razor,selection,Asp.net Core,Razor,Selection,我的页面上有两个查询选项,一个是客户查询,一个是供应商查询。为什么我看不到任何元素 ==c#代码== 在调试器中显示的元素请参见图2 ==在页面中== 很遗憾,我看不到任何项目。有什么想法吗 附件你得到我的代码抱歉只张贴图片 我的c代码 使用系统; 使用System.Collections.Generic; 使用System.Linq; 使用System.Threading.Tasks; 使用Microsoft.AspNetCore.Mvc; 使用Microsoft.AspNetCore

我的页面上有两个查询选项,一个是客户查询,一个是供应商查询。为什么我看不到任何元素

==c#代码==

在调试器中显示的元素请参见图2

==在页面中==

很遗憾,我看不到任何项目。有什么想法吗

附件你得到我的代码抱歉只张贴图片

我的c代码

使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Threading.Tasks;
使用Microsoft.AspNetCore.Mvc;
使用Microsoft.AspNetCore.Mvc.RazorPages;
使用Microsoft.EntityFrameworkCore;
使用Microsoft.AspNetCore.Mvc.Rendering;
使用WorkCollaboration.Data;
使用WorkCollaboration.Models;
命名空间WorkCollaboration.Pages.Contacts
{ 
公共类CreateModel:PageModel
{
私有只读WorkCollaboration.Data.WorkCollaborationContext\u上下文;
公共CreateModel(WorkCollaboration.Data.WorkCollaborationContext)
{
_上下文=上下文;
}
公共异步任务OnGetAsync()
{
CustomerDropDownDisp=Wait _context.CustomerDropDown.ToListSync();//为下拉菜单添加
SupplierDropDownDisp=Wait _context.SupplierDropDown.ToListSync();//为下拉菜单添加
返回页();
}
[BindProperty]
公共联系人{get;set;}
公共DayOfWeek DayOfWeek{get;set;}
公共IEnumerable CustomerDropDownDisp{get;set;}
公共IEnumerable SupplierDropDownDisp{get;set;}
//若要防止套印攻击,请启用要绑定到的特定属性,例如
//更多详细信息,请参阅https://aka.ms/RazorPagesCRUD.
公共异步任务OnPostAsync()
{
如果(!ModelState.IsValid)
{
返回页();
}
_context.Contact.Add(Contact);
wait_context.SaveChangesAsync();
返回重定向Topage(“/ContactsOverview/Index”);
}
}
}
这里是我的剃刀页面Html

@page 
@model WorkCollaboration.Pages.Contacts.CreateModel

@{
    ViewData["Title"] = "Create";
    ViewData["RandomId"] = Guid.NewGuid().GetHashCode();
}

<h1>Create</h1>
<h4>Contact</h4>
<p>
    <a asp-page="/ContactsOverview/Index">Back to Index</a>
</p>
<hr />
<div class="row">
    <div class="col-md-4">
        <form method="post">
            <div asp-validation-summary="ModelOnly" class="text-danger"></div>
            <div class="form-group">
                <label asp-for="Contact.ContactId" class="control-label"></label>
                <input asp-for="Contact.ContactId" value='@ViewData["RandomId"]' readonly="readonly" class="form-control" />
                <span asp-validation-for="Contact.ContactId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.LastName" class="control-label"></label>
                <input asp-for="Contact.LastName" class="form-control" />
                <span asp-validation-for="Contact.LastName" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.FirstName" class="control-label"></label>
                <input asp-for="Contact.FirstName" class="form-control" />
                <span asp-validation-for="Contact.FirstName" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.CustomerId" class="control-label"></label>
                <input asp-for="Contact.CustomerId" class="form-control" />
                <span asp-validation-for="Contact.CustomerId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.CustomerId" class="control-label"></label>
                <select id="CusId" aps-items="@(new SelectList(Model.CustomerDropDownDisp,"CusId","CusName"))">
                    <option value="" selected disabled> -- Select Customer--</option>>
                </select>
                <span asp-validation-for="Contact.CustomerId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.SupplierId" class="control-label"></label>
                <input asp-for="Contact.SupplierId" class="form-control" />
                <span asp-validation-for="Contact.SupplierId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.SupplierId" class="control-label"></label>
                <select id="SupId" aps-items="@(new SelectList(Model.SupplierDropDownDisp,"SupId","SupName"))">
                    <option value="" selected disabled> -- Select Supplier--</option>>
                </select>
                <span asp-validation-for="Contact.SupplierId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateStreet" class="control-label"></label>
                <input asp-for="Contact.PrivateStreet" class="form-control" />
                <span asp-validation-for="Contact.PrivateStreet" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateStreetNo" class="control-label"></label>
                <input asp-for="Contact.PrivateStreetNo" class="form-control" />
                <span asp-validation-for="Contact.PrivateStreetNo" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateStreetAdditionalInfo" class="control-label"></label>
                <input asp-for="Contact.PrivateStreetAdditionalInfo" class="form-control" />
                <span asp-validation-for="Contact.PrivateStreetAdditionalInfo" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateZip" class="control-label"></label>
                <input asp-for="Contact.PrivateZip" class="form-control" />
                <span asp-validation-for="Contact.PrivateZip" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateTown" class="control-label"></label>
                <input asp-for="Contact.PrivateTown" class="form-control" />
                <span asp-validation-for="Contact.PrivateTown" class="text-danger"></span>
            </div>
            <div class="form-group">
                @Html.LabelFor(model => model.Contact.PrivateCountry, htmlAttributes: new { @class = "form-group" })
                <div class="form-group">
                    @Html.DropDownListFor(model => model.Contact.PrivateCountry, new List<SelectListItem>
                    {
                        new SelectListItem {Text = "CH", Value = "CH", Selected = true },
                        new SelectListItem {Text = "D", Value = "D" },
                        new SelectListItem {Text = "FL", Value = "FL" },
                    }, new { @class = "form-control" })
                    @Html.ValidationMessageFor(model => model.Contact.PrivateCountry, "", new { @class = "text-danger" })
                </div>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivatePhone" class="control-label"></label>
                <input asp-for="Contact.PrivatePhone" class="form-control" />
                <span asp-validation-for="Contact.PrivatePhone" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.BusinessPhone" class="control-label"></label>
                <input asp-for="Contact.BusinessPhone" class="form-control" />
                <span asp-validation-for="Contact.BusinessPhone" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.MobilePhone" class="control-label"></label>
                <input asp-for="Contact.MobilePhone" class="form-control" />
                <span asp-validation-for="Contact.MobilePhone" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.Mail" class="control-label"></label>
                <input asp-for="Contact.Mail" class="form-control" />
                <span asp-validation-for="Contact.Mail" class="text-danger"></span>
            </div>
            <select asp-for="DayOfWeek" asp-items="Html.GetEnumSelectList<DayOfWeek>()">
                <option value="">Choose a day</option>
            </select>
            <div class="form-group">
                <input type="submit" value="Create" class="btn btn-primary" />
                <a href="/ContactsOverview/Index" class="btn btn-primary">Back to List</a>
            </div>
        </form>
    </div>
</div>
@page
@模型WorkCollaboration.Pages.Contacts.CreateModel
@{
ViewData[“标题”]=“创建”;
ViewData[“RandomId”]=Guid.NewGuid().GetHashCode();
}
创造
接触


在为
CustomerDropDownDisp
设置数据的行上放置断点。这一定是由于您的数据库没有数据。您可以按照以下步骤进行检查

设置断点并按IIS Express首次启动项目:

您可以查看数据库是否不包含
CustomerDropDownDisp
的任何数据,
count=0
和razor不显示元素:

如果它包含
CustomerDropDownDisp
的数据,则selectlist可以成功呈现:


欢迎来到堆栈溢出。请编辑您的帖子,将您的代码直接作为文本,而不是截图。代码的截图很难阅读、复制或搜索。依赖于代码截图的帖子如果没有被删除,通常会被关闭,这会减少你获得答案的改变。(我已经投票决定结束这个问题,但一旦你编辑了你的问题,我会很高兴地收回我的投票。)在调试器屏幕截图中,你显示了
供应商DropDownDisp
的结果,但突出显示的代码都与
CustomerDropDownDisp
相关。您是否看到“供应商”下拉列表的结果?您确定调试器正在
CustomerDropDownDisp
中显示数据吗?我问这个问题是因为屏幕截图没有证明这一点,尽管它也不矛盾。请设置断点以检查CustomerDropDownDisp是否包含数据,并请在提问时共享代码而不是屏幕截图。您要求我发布代码,现在您两次拒绝了它。。。同时,我发现问题出在Razor页面(旧代码),所以如果我不能使用edit,如何发布代码?评论太短我想我需要对问题提出新的要求,还是?谢谢你的帮助!您好@Christofobergholzer,您需要编辑您的问题而不是编辑我的答案来共享您的详细代码。如果仍然是相同的问题,则无需提出新的请求。您是否检查了
CustomerDropDownDisp
是否具有与我的答案相同的数据?
@page 
@model WorkCollaboration.Pages.Contacts.CreateModel

@{
    ViewData["Title"] = "Create";
    ViewData["RandomId"] = Guid.NewGuid().GetHashCode();
}

<h1>Create</h1>
<h4>Contact</h4>
<p>
    <a asp-page="/ContactsOverview/Index">Back to Index</a>
</p>
<hr />
<div class="row">
    <div class="col-md-4">
        <form method="post">
            <div asp-validation-summary="ModelOnly" class="text-danger"></div>
            <div class="form-group">
                <label asp-for="Contact.ContactId" class="control-label"></label>
                <input asp-for="Contact.ContactId" value='@ViewData["RandomId"]' readonly="readonly" class="form-control" />
                <span asp-validation-for="Contact.ContactId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.LastName" class="control-label"></label>
                <input asp-for="Contact.LastName" class="form-control" />
                <span asp-validation-for="Contact.LastName" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.FirstName" class="control-label"></label>
                <input asp-for="Contact.FirstName" class="form-control" />
                <span asp-validation-for="Contact.FirstName" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.CustomerId" class="control-label"></label>
                <input asp-for="Contact.CustomerId" class="form-control" />
                <span asp-validation-for="Contact.CustomerId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.CustomerId" class="control-label"></label>
                <select id="CusId" aps-items="@(new SelectList(Model.CustomerDropDownDisp,"CusId","CusName"))">
                    <option value="" selected disabled> -- Select Customer--</option>>
                </select>
                <span asp-validation-for="Contact.CustomerId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.SupplierId" class="control-label"></label>
                <input asp-for="Contact.SupplierId" class="form-control" />
                <span asp-validation-for="Contact.SupplierId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.SupplierId" class="control-label"></label>
                <select id="SupId" aps-items="@(new SelectList(Model.SupplierDropDownDisp,"SupId","SupName"))">
                    <option value="" selected disabled> -- Select Supplier--</option>>
                </select>
                <span asp-validation-for="Contact.SupplierId" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateStreet" class="control-label"></label>
                <input asp-for="Contact.PrivateStreet" class="form-control" />
                <span asp-validation-for="Contact.PrivateStreet" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateStreetNo" class="control-label"></label>
                <input asp-for="Contact.PrivateStreetNo" class="form-control" />
                <span asp-validation-for="Contact.PrivateStreetNo" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateStreetAdditionalInfo" class="control-label"></label>
                <input asp-for="Contact.PrivateStreetAdditionalInfo" class="form-control" />
                <span asp-validation-for="Contact.PrivateStreetAdditionalInfo" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateZip" class="control-label"></label>
                <input asp-for="Contact.PrivateZip" class="form-control" />
                <span asp-validation-for="Contact.PrivateZip" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivateTown" class="control-label"></label>
                <input asp-for="Contact.PrivateTown" class="form-control" />
                <span asp-validation-for="Contact.PrivateTown" class="text-danger"></span>
            </div>
            <div class="form-group">
                @Html.LabelFor(model => model.Contact.PrivateCountry, htmlAttributes: new { @class = "form-group" })
                <div class="form-group">
                    @Html.DropDownListFor(model => model.Contact.PrivateCountry, new List<SelectListItem>
                    {
                        new SelectListItem {Text = "CH", Value = "CH", Selected = true },
                        new SelectListItem {Text = "D", Value = "D" },
                        new SelectListItem {Text = "FL", Value = "FL" },
                    }, new { @class = "form-control" })
                    @Html.ValidationMessageFor(model => model.Contact.PrivateCountry, "", new { @class = "text-danger" })
                </div>
            </div>
            <div class="form-group">
                <label asp-for="Contact.PrivatePhone" class="control-label"></label>
                <input asp-for="Contact.PrivatePhone" class="form-control" />
                <span asp-validation-for="Contact.PrivatePhone" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.BusinessPhone" class="control-label"></label>
                <input asp-for="Contact.BusinessPhone" class="form-control" />
                <span asp-validation-for="Contact.BusinessPhone" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.MobilePhone" class="control-label"></label>
                <input asp-for="Contact.MobilePhone" class="form-control" />
                <span asp-validation-for="Contact.MobilePhone" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Contact.Mail" class="control-label"></label>
                <input asp-for="Contact.Mail" class="form-control" />
                <span asp-validation-for="Contact.Mail" class="text-danger"></span>
            </div>
            <select asp-for="DayOfWeek" asp-items="Html.GetEnumSelectList<DayOfWeek>()">
                <option value="">Choose a day</option>
            </select>
            <div class="form-group">
                <input type="submit" value="Create" class="btn btn-primary" />
                <a href="/ContactsOverview/Index" class="btn btn-primary">Back to List</a>
            </div>
        </form>
    </div>
</div>