C# 实体框架MVC剑道下拉列表
我试图通过控制器将数据从视图模型传递到dropdownlist,而不是使用ViewBag或ViewData、单选按钮和屏蔽文本框。我使用的是实体框架 问题是我似乎无法让控制器将视图模型属性正确地传递到视图中。我看过很多视频,并阅读了大量关于使用ViewBag和ViewData进行此操作的信息。我想我需要三种不同的方法。读取以读取和填充dropdownlist和屏蔽文本框,编辑以编辑它们,添加新记录以添加到数据库 我不知道该怎么做。如果它只是一个普通的文本框,而不是一个kendomsask或kendodropDown,就可以了 我有一个这样的模型:C# 实体框架MVC剑道下拉列表,c#,asp.net-mvc,kendo-ui,kendo-asp.net-mvc,C#,Asp.net Mvc,Kendo Ui,Kendo Asp.net Mvc,我试图通过控制器将数据从视图模型传递到dropdownlist,而不是使用ViewBag或ViewData、单选按钮和屏蔽文本框。我使用的是实体框架 问题是我似乎无法让控制器将视图模型属性正确地传递到视图中。我看过很多视频,并阅读了大量关于使用ViewBag和ViewData进行此操作的信息。我想我需要三种不同的方法。读取以读取和填充dropdownlist和屏蔽文本框,编辑以编辑它们,添加新记录以添加到数据库 我不知道该怎么做。如果它只是一个普通的文本框,而不是一个kendomsask或ken
using System.ComponentModel.DataAnnotations;
namespace Cars.Models.CarsAppViewModels
{
public class CarsViewModel
{
[Key]
public int? IDNumber { get; set; }
public string CarType { get; set; }
public string Ford { get; set; }
public String Chevy { get; set; }
public List<SelectListItem> Mazdas { get; set; }
}
}
我的控制器是让我感到舒服的部件
namespace Cars.Controllers
{
public class CarTypeController : Controller
{
private readonly CarContext _context;
public CarTypeController(CarContext context)
{
_context = context;
}
public IActionResult Index()
{
ViewData["Action"] = "Index";
return View();
}
public List<CarsViewModel> GetCars()
{
List<CarsViewModel> list = new List<CarsViewModel>();
list = _context.Ford.Select(c => new CarsViewModel
{
IDNumber = c.IDNumber.ToString(),
Ford=c.Ford,
Mazda=c.Mazda
}).ToList();
return list;
}
}
}
我的看法是:
@model Model.Cars.Models.CarsAppViewModels
<div class="col-md-11">
<div class="panel panel-info">
<div class="panel-heading text-center">
Car Types
</div>
<div class="panel-body">
<div style="float:inherit; width: 100%;">
<span>
<label style="margin:2em;color:#0487c4;">
make / Model
</label>
@Html.Kendo().DropDownList()
.Name("CarType").OptionLabel("Choose the Type Of Car From theList")
.HtmlAttributes(new { style = "width: 50%" })
</span>
<ul>
<li style="color:#0487c4">
@(Html.Kendo().RadioButton().Name("Company1")
.Checked(true)
.HtmlAttributes(new { @name = "company" })
.Label("Company"))
</li>
<li style="color:#0487c4">
@(Html.Kendo().RadioButton()
.Name("Person")
.Checked(true)
.HtmlAttributes(new { @name = "company" })
.Label("Individual"))
</li>
<li>
@(Html.Kendo()
.MaskedTextBox()
.Name("FirstName")
</li>
</ul>
</div>
</div>
</div>
</div>
我得到一个空引用错误。你得到了什么错误?请提供所有必要的信息和细节,以解决问题。您没有描述问题以及您尝试了什么。您确定正确地从数据库获取数据并将其存储在实体中吗?我收到一个空引用错误。或对象未设置为referencePlease调试,并确保Ford不为null。我确信数据库正常,并且我可以从kendo网格数据源访问信息,而不是从文本框或下拉列表。Index方法不应该返回视图吗?视图中的model语句正确吗?它似乎指定了名称空间而不是类?