2015-04-16 2 views
0

Я пытаюсь сделать простейшую вещь в EF, чтобы сохранить запись данных в таблицу базы данных.Entity Framework DbContext не сохраняет данные в базе данных

Все идет хорошо, модель будет создаваться, добавлено и сохранено, но когда я иду к СТОЛУ ничего ...

Видит кто-то, что я делаю неправильно?

Это мой DbContext:

public class AuthContext : IdentityDbContext<ApplicationUser> 
{ 
    public AuthContext() : base("AuthContext") 
    { 
    } 

    public virtual DbSet<TransferResponse> Transactions { get; set; } 
    public virtual DbSet<FailCounter> Fails { get; set; } 
} 

Это моя модель:

public class FailCounter 
{ 
    [Key] 
    public int Id { get; set; } 
    public string UserId { get; set; } 
    public int FailCounterValue { get; set; } 
} 

И это код для сохранения:

using(AuthContext dbcnt = new AuthContext()) 
{ 
    var userId = repo.FindByUserName(model.DeviceId); 
    FailCounter failCount = new FailCounter(); 
    failCount.FailCounterValue = 1; 
    failCount.UserId = userId.Id; 
    dbcnt.Fails.Add(failCount); 
    dbcnt.SaveChanges(); 
    return Request.CreateErrorResponse(HttpStatusCode.Unauthorized, "Invalid username or password."); 
} 

Я использовал отладчик и нашел ничего ... userId не равно null, так что строка не проблема. Никакого исключения, ничего, но тогда база данных пуста.

+0

Под «идти к столу» вы имеете в виду, глядя на него в VS с помощью инструментов базы данных или выбора значения в коде? Если первый: возможно, вы просто смотрите на неправильную базу данных, EF использует другую 'ConnectionString'. – germi

+0

@germi как ... Я даже смотрю это из SQL Managment Studio ... И во время отладки я также проверял, были ли значения правильными: -/ –

+0

Может ли ваш код указывать на базу данных 'test' ошибка (например, база данных (localdb) \ v11.0)? – Ulric

ответ

1

попробовать это вместо FailCounter failCount = new FailCounter();
попробовать, как этот FailCounter failCount = dbcnt.Fails.Create();

+0

хорошо, хорошо, если он работает, но 'Add' тоже должен это сделать. – tschmit007

Смежные вопросы