创建用户时将属性值设置为0

时间:2018-05-16 12:03:31

标签: c# entity-framework

在MVC的创建视图中注册新帐户时,如何将balance属性设置为0。对于刚刚注册的用户,我希望余额为0,默认为0!

namespace CSGO_MVC.Models
{
    public class SteamAccount
    {
        [Key]
        public int Id { get; set; }
        public long SteamId { get; set; }
        public Balance accountbalance { get; set; }
        public string UserName { get; set; }
        public string Password { get; set; }
        public bool UserStatus { get; set; }
        public string TradeLink { get; set; }
    }
}

这是我的控制器

[HttpGet]
public ActionResult Create()
{
    return View();
}

[HttpPost]
public ActionResult Create(SteamAccount acc)
{
    if (ModelState.IsValid)
    {
        AccountRepo.Insert(acc);
        AccountRepo.Save();
        return RedirectToAction("Index");
    }
    else
    {
        return View(acc);
    }
}

1 个答案:

答案 0 :(得分:1)

您没有显示有关Balance的详细信息,我将假设它是类似于此的类:

public class Balance
{
    public int Value { get; set; }
}

然后您需要为accountbalance分配一个正确初始化的Balance对象,如下所示:

if (ModelState.IsValid)
{
    acc.accountbalance = new Balance { Value = 0 };
    AccountRepo.Insert(acc);
    AccountRepo.Save();
    return RedirectToAction("Index");
}
else
// ...

实际上int的默认值已经是0,但我经常喜欢明确地完成这些事情。