实体框架-设置一个“空”字整型为空
本文关键字:整型 一个 框架 设置 实体 | 更新日期: 2023-09-27 18:10:11
我的数据库中有一个名为Login
的表。在这个表中,我有一个名为Head_ID
的属性,它是可空的。
基本上,你可以有一个主任,或者你是主任。如果你是主任,Head_ID
应该是空的。在我的应用程序中,我有可能更改一个人的主管(同事更改主管,主管降级并获得比他更高的主管),但此int
不会设置为
Service.cs
public int EditLogin(LoginDTO login)
{
try
{
var dbLogin = DAO.HourRegInstance.Login.Single(x => x.ID == login.Id);
dbLogin.Name = login.Name;
dbLogin.Username = login.Username;
if (login.Head_Id == 0)
{
//Doesn't work
dbLogin.Head_ID = null;
}
dbLogin.Role_ID = login.Role_Id;
DAO.HourRegInstance.SaveChanges();
return 1;
} catch(Exception e){
return -1;
}
}
Login.cs
public partial class Login
{
public Login()
{
this.HourRegistrationConfirmed = new HashSet<HourRegistrationConfirmed>();
this.HourRegistrationConfirmed1 = new HashSet<HourRegistrationConfirmed>();
this.Login1 = new HashSet<Login>();
this.LoginProject = new HashSet<LoginProject>();
}
public long ID { get; set; }
public string Name { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public long Role_ID { get; set; }
public Nullable<long> Head_ID { get; set; }
public virtual ICollection<HourRegistrationConfirmed> HourRegistrationConfirmed { get; set; }
public virtual ICollection<HourRegistrationConfirmed> HourRegistrationConfirmed1 { get; set; }
public virtual ICollection<Login> Login1 { get; set; }
public virtual Login Login2 { get; set; }
public virtual Role Role { get; set; }
public virtual ICollection<LoginProject> LoginProject { get; set; }
}
一个人如何完成这样的任务?
我自己解决了这个问题
我不确定是什么原因导致了这个问题,但是重新启动服务后,现在一切似乎都工作正常。也许实体框架就是实体框架?