问题描述
模型类::
public class MappedModels
{
[Key]
public int MappedId { get; set; }
public int MappedType { get; set; }
public string MappedDate { get; set; }
public decimal Mappedamount { get; set; }
[ForeignKey("ProjectId")]
public ProjectModels Project { get; set; }
public int ProjectId { get; set; }
[ForeignKey("SchoolId")]
public SchoolModels School { get; set; }
public int SchoolId { get; set; }
}
public class ProjectModels
{
[Key]
public int ProjectId { get; set; }
public string ProjectName { get; set; }
public decimal Amount { get; set; }
}
viewmodel类::
public class Mappedviewmodels
{
public int MappedType { get; set; }
public string MappedDate { get; set; }
public decimal Mappedamount { get; set; }
public int ProjectId { get; set; }
public string ProjectName { get; set; }
public decimal ProjectAllocatedamount { get; set; } // assigned amount for each project
public decimal RemainingAmount { get; set; } // remaining amount from the project amount that can be allocated
public int SchoolId { get; set; }
public string SchoolName { get; set; }
}
我已经省略了学校模型课程,因为它仅包含名称和ID。
MappedModels
用于将项目金额分配给不同的学校。用户必须从下拉列表中选择学校名称和项目名称。然后将项目金额分配给相应的学校。
在分配金额之前,我想向用户显示实际的项目金额和该项目的剩余金额。
让我们说一下ProjectModels {1,MEEG203,500000}
假设此ProjectId已映射到数量为300000的学校。
现在,如果用户选择相同的ProjectId来向另一所学校分配金额,我想表明: ProjectAllocatedamount = 500000 剩余金额= 500000-300000 = 200000
我已经计算出了变量all
中分配的RemainingAmount。
但是此查询返回的是空值,为什么会这样呢?我无法理解此查询出了什么问题。
public ActionResult Create(int? ProjectId)
{
// other code blocks ommitted...
var result = db.Mappeds.Include(p => p.Project)
.Where(p => p.ProjectId == ProjectId).Select(x => new Mappedviewmodels()
{
ProjectName = x.Project.ProjectName,ProjectAllocatedamount = x.Project.Amount,SchoolName = "",Mappedamount = 0,RemainingAmount = x.Project.Amount - all
}).ToList().LastOrDefault();
return View(result);
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)