【发布时间】:2019-04-11 04:35:32
【问题描述】:
收到此错误:
System.Web.dll 中出现“System.Web.HttpException”类型的异常,但未在用户代码中处理 附加信息:DataBinding:“Final.Models.Hello”不包含名为“700”的属性。
我通过谷歌搜索了一些答案,但我仍然感到迷茫。
模型类:
public Hello () {
db = new ExtensionDBEntities();
}
public List<Hello> getID()
{
var que = (from rel in db.Table1
select new Hello
{
ID = rel.ID
}).ToList();
return que;
}
public List<Hello> getStuff()
{
var que = (from wre in db.View
select new Hello
{
ID = wre.ID,
Summary = wre.Summary,
Description = wre.Description
}
}
getHello() 与 getStuff() 方法完全相同,只是接受一个字符串 ID 参数。
控制器类:
public ActionResult Index()
{
var model = test.getStuff();
ViewBag.Releases = new SelectList(test.getID(), "", "ID");
ViewBag.Managers = new SelectList(test.getManagers(), "", "Managers");
return View("");
}
[HttpPost]
public ActionResult Selection()
{
string selectedId = Request["IDText"].ToString();
string Managers = Request["ManagersText"].ToString();
var model = test.getStuff();
ViewBag.Releases = new SelectList(test.getID(), selectedId, "ID");
ViewBag.Managers = new SelectList(test.getManagers(), Managers, "Managers");
var que = test.getHello(selectedId, Managers);
return View(que);
}
索引视图类:
$(document).ready(function () {
$("#Releases").on("change", function () {
var value = $('#Releases :selected').text()
$("#IDText").val(value);
});
$("#Managers").on("change", function () {
var value = $('#Managers :selected').text()
$("#ManagersText").val(value);
});
});
@using (Html.BeginForm("Selection", "Sample", FormMethod.Post))
{
<div class="container" id='div_release'>
@Html.DropDownList("Releases", ViewBag.Releases as SelectList)
@Html.DropDownList("Managers", ViewBag.Managers as SelectList)
@Html.Hidden("IDText", "")
@Html.Hidden("ManagersText", "")
<input type="submit" name="Submit" id="btnUploadData" class="btn btn-primary" value="Upload" />
</div>
}
选择视图类:
<div class="container">
<table id="myTable" align="left">
<tr>
<th>@Html.DisplayNameFor(model => model.ID)</th>
<th>@Html.DisplayNameFor(model => model.Summary)</th>
<th>@Html.DisplayNameFor(model => model.Description)</th>
</tr>
@foreach (var item in Model)
{
<tr id="Home">
<td>@Html.DisplayFor(x => item.ID)</td>
<td>@Html.DisplayFor(x => item.Summary)</td>
<td>@Html.DisplayFor(x => item.Description)</td>
</tr>
}
$(document).ready(function () {
$("#Releases").on("change", function () {
var value = $('#Releases :selected').text()
$("#IDText").val(value);
});
$("#Managers").on("change", function () {
var value = $('#Managers :selected').text()
$("#ManagersText").val(value);
});
});
@using (Html.BeginForm("Selection", "Sample", FormMethod.Post))
{
<div class="container" id='div_release'>
@Html.DropDownList("Releases", ViewBag.Releases as SelectList) // Getting the error here....
@Html.DropDownList("Managers", ViewBag.Managers as SelectList)
@Html.Hidden("IDText", "")
@Html.Hidden("ManagersText", "")
<input type="submit" name="Submit" id="btnUploadData" class="btn btn-primary" value="Submit" />
</div>
}
</table>
</div>
错误发生在选择视图类中。视图类几乎相同,唯一的区别是选择视图类中显示的数据基于从下拉列表中选择的值。
【问题讨论】:
标签: javascript jquery ajax asp.net-mvc entity-framework