从控制器而不是视图中发送模型值
本文关键字:模型 视图 控制器 | 更新日期: 2023-09-27 18:32:50
目前我有用户从下拉列表中选择值,它通过控制器发送,如下所示:
if (model.HomeEquityDetails.LumpSumLineCredit == "Lump Sum")
{
loanInfo.LumpSum = true;
loanInfo.LineOfCredit = false;
}
else
{
loanInfo.LineOfCredit = true;
loanInfo.LumpSum = false;
我如何对其进行硬编码,以便它像往常一样返回LumpSumLineCredit,以便用户不再需要选择。 我基本上想要
HomeEquityDetails.LumpSumLineCredit
在控制器中始终等于"一次性付款"。 我可以发送吗
loanInfo.LumpSum = true;
稍微 OT 但假设您想在代码上方保持相同的逻辑,可以简化为:
loanInfo.LumpSum = model.HomeEquityDetails.LumpSumLineCredit == "Lump Sum";
loanInfo.LineOfCredit = !loanInfo.LumpSum;
这最终删除了 if 测试并简化了代码,如果不再需要测试"一次性付款">
:loanInfo.LumpSum = true;
loanInfo.LineOfCredit = !loanInfo.LumpSum;
似乎您还需要指定贷款类型,因此假设您要添加贷款类型,拥有布尔值将是一场维护噩梦。您可以考虑以下几点:
public enum LoanTypeEnum {
LineOfCredit,
LumpSum
}
public struct LoanInfoStruct {
public LoanTypeEnum LoanType {get; set; )
}
这意味着代码将简化为假设loanInfo是一个LoanInfoStruct:
loanInfo.LoanType = LoanTypeEnum.LineOfCredit;