,我要为我的客户表一ClientsName到我的支付表的下拉列表,所以当我创建了一个支付我拿下拉列表这样的: 下拉值变空值
所以我把一个断点调试对我控制器和价值ClientsName总是空的,但在我看来,它总是把我的下拉列表的第一个值
型号:
public class Payments
{
[Key]
public int PaymentsId { get; set; }
public int ClientsId { get; set; }
[ForeignKey("ClientsId")]
public virtual Clients Clients { get; set; }
public String Paymentnumber { get; set; }
public DateTime PaymentDate { get; set; }
public Decimal Amount { get; set; }
public Decimal Discount { get; set; }
public String Reference { get; set; }
public String Bank { get; set; }
public Decimal Total { get; set; }
}
GET控制器:
//GET CREATE CONTROLLER
public ActionResult Create(Payments model)
{
var clientList = new PaymentsViewModel
{
Clients = new SelectList(db.ClientsList, "ClientsId", "ClientsName")
};
return View(clientList);
}
POST控制器(外延法):
public static PaymentsViewModel PaymentsCreate(this PaymentsViewModel model)
{
var paynew = new Payments
{
Paymentnumber = model.Paymentnumber,
PaymentDate = DateTime.Now.Date,
Amount = model.Amount,
Discount = model.Discount,
Reference = model.Reference,
Bank = model.Bank,
Total = model.Amount - model.Discount
};
db.PaymentsList.Add(paynew);
db.SaveChanges();
return model;
}
}
CREATE VIEW:
@Html.DropDownListFor(x => x.Clients, Model.Clients, new { @class = "form-control", @required = "required" })
我真不知道这里发生了什么
您的HTML下拉列表中没有空白值,因此如果您未指定要选择的选项,它将始终显示第一个选项。你的问题和问题是什么? –
如何指定我选择的选项?注意:我更新我的视图 – Demain
您是否希望下拉列表选择空白或特定项目? –