Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 数据库未创建记录_C#_Entity Framework 5 - Fatal编程技术网

C# 数据库未创建记录

C# 数据库未创建记录,c#,entity-framework-5,C#,Entity Framework 5,使用EF 5.0在数据库中插入记录不起作用。通过我的代码调试,我找不到任何异常。浏览代码时,它应该在数据库中插入一条新记录,但是当我查看数据库时,没有创建新记录。但是,我确实对数据库进行了更改,在调试中,当我检查“assestUser”(模型)时,我可以看到所有值,包括删除的列(我所做的更改)。有人能帮我解决我做错了什么吗? 这就是我所做的: 第页: public分部类\u默认值:第页 { 实体语境; public_Default() { 上下文=新的EntityContext(); } 受保护

使用EF 5.0在数据库中插入记录不起作用。通过我的代码调试,我找不到任何异常。浏览代码时,它应该在数据库中插入一条新记录,但是当我查看数据库时,没有创建新记录。但是,我确实对数据库进行了更改,在调试中,当我检查“assestUser”(模型)时,我可以看到所有值,包括删除的列(我所做的更改)。有人能帮我解决我做错了什么吗? 这就是我所做的:

第页:

public分部类\u默认值:第页
{
实体语境;
public_Default()
{
上下文=新的EntityContext();
}
受保护的无效btnSavePersonalDetails\u单击(对象发送者,事件参数e)
{
尝试
{
SkillsAssestUser assestUser=新SkillsAssestUser();
assestUser.DomainAcc=lblDomAcc.Text;
assestUser.Name=txtName.Text;
assestUser.name=txtnamname.Text;
assestUser.Division=txtDivision.Text;
assestUser.Manager=txtManager.Text;
context.SkillsAssestUsers.Add(assestUser);
SaveChanges();
//var assestUser=context.Set();
//assestUser.Add(新技能assestUser
//{
//DomainAcc=lblDomAcc.Text,
//Name=txtName.Text,
//姓氏=txtnamname.Text,
//Division=txtDivision.Text,
//Manager=txtManager.Text
//});
//SaveChanges();
ClearPersonalDetails();
}
捕获(例外情况除外)
{
抛出新异常(“插入详细信息时出错。”+ex.Message);
}
}
DbContext:

 public partial class EntityContext : DbContext
 {
    public EntityContext()
        : base("name=SOSConnectionString")
    {
        base.Configuration.LazyLoadingEnabled = true;
        base.Configuration.ProxyCreationEnabled = false;
    }

     #region AddTables
    public DbSet<AdditionalSkills> AdditionalSkillss { get; set; }
    public DbSet<CertifiedTraining> CertifiedTrainings { get; set; }
    public DbSet<OtherCertifiedTraining> OtherCertifiedTrainings { get; set; }
    public DbSet<OtherEdu> OtherEdus { get; set; }
    public DbSet<SchoolEdu> SchoolEdus { get; set; }
    public DbSet<SkillsAssestUser> SkillsAssestUsers { get; set; }
    public DbSet<ValueAddedSkills> ValueAddedSkillss { get; set; } 
    #endregion
    }

     void Application_Start(object sender, EventArgs e)
    {
        // Code that runs on application startup
        AuthConfig.RegisterOpenAuth();
        Database.SetInitializer<EntityContext>(null);
    }
public分部类EntityContext:DbContext
{
公共EntityContext()
:base(“name=SOSConnectionString”)
{
base.Configuration.LazyLoadingEnabled=true;
base.Configuration.ProxyCreationEnabled=false;
}
#区域地址表
公共DbSet AdditionalSkillss{get;set;}
公共DbSet认证训练{get;set;}
公共数据库集其他认证训练{get;set;}
公共DbSet OtherEdus{get;set;}
公共数据库集学校教育{get;set;}
公共数据库集技能评估器{get;set;}
public DbSet ValueAddedSkillss{get;set;}
#端区
}
无效应用程序\u启动(对象发送方,事件参数e)
{
//在应用程序启动时运行的代码
AuthConfig.RegisterOpenAuth();
Database.SetInitializer(null);
}

我做错了什么?…ef新手…

首先检查连接字符串

请确保这是在Global.ASAX上:

void Application_Start(object sender, EventArgs e)
 {
    // Code that runs on application startup
    AuthConfig.RegisterOpenAuth();
    Database.SetInitializer<EntityContext>(null);
 }

我想,值得一问的是,你是在每次构建时都将数据库文件复制到输出目录中,还是使用SQL Server?@Alex,嗨,不,我不是在每次构建时都将db文件复制到输出目录中……我以前在windows应用程序中使用过ef 4.1,这在那里奏效了……你检查过分配的值的类型吗?是的,所有类型是正确的…代码似乎是正确的..如果可能的话(我知道这不是正确的方法),但是你能从头开始重新生成ef吗。。
void Application_Start(object sender, EventArgs e)
 {
    // Code that runs on application startup
    AuthConfig.RegisterOpenAuth();
    Database.SetInitializer<EntityContext>(null);
 }
      using (var mycontext = new context())
        {
           SkillsAssestUser assestUser = new SkillsAssestUser();
           assestUser.DomainAcc = lblDomAcc.Text;
           assestUser.Name = txtName.Text;
           assestUser.Surname = txtSurname.Text;
           assestUser.Division = txtDivision.Text;
           assestUser.Manager = txtManager.Text;

           mycontext.SkillsAssestUsers.Add(assestUser);
           mycontext.SaveChanges();
        }