I'm using this code in Seed to generate values in my table, so I do not have to type in the database, when I change something in my code and need to give an update in the database, so it is not running, , the code below is for adding or updating the information, but it is just adding the values, and with that it is doubling.
context.AddOrUpdate (x => x.StateID, state);
The Seed method is as follows ...
internal sealed class Configuration : DbMigrationsConfiguration<Tribus.Models.Context>
{
public Configuration()
{
AutomaticMigrationsEnabled = true;
}
protected override void Seed(Tribus.Models.Context context)
{
IList<Estado> estados = new List<Estado>();
estados.Add(new Estado() { Nome = "Acre", Sigla = "AC" });
estados.Add(new Estado() { Nome = "Alagoas", Sigla = "AL" });
estados.Add(new Estado() { Nome = "Amapá", Sigla = "AP" });
estados.Add(new Estado() { Nome = "Amazonas", Sigla = "AM" });
estados.Add(new Estado() { Nome = "Bahia", Sigla = "BA" });
estados.Add(new Estado() { Nome = "Ceará", Sigla = "CE" });
estados.Add(new Estado() { Nome = "Distrito Federal", Sigla = "DF" });
estados.Add(new Estado() { Nome = "Espírito Santo", Sigla = "ES" });
estados.Add(new Estado() { Nome = "Goiás", Sigla = "GO" });
estados.Add(new Estado() { Nome = "Maranhão", Sigla = "MA" });
estados.Add(new Estado() { Nome = "Mato Grosso", Sigla = "MT" });
estados.Add(new Estado() { Nome = "Mato Grosso do Sul", Sigla = "MS" });
estados.Add(new Estado() { Nome = "Minas Gerais", Sigla = "MG" });
estados.Add(new Estado() { Nome = "Pará", Sigla = "PA" });
estados.Add(new Estado() { Nome = "Paraíba", Sigla = "PB" });
estados.Add(new Estado() { Nome = "Paraná", Sigla = "PR" });
estados.Add(new Estado() { Nome = "Pernambuco", Sigla = "PE" });
estados.Add(new Estado() { Nome = "Piauí", Sigla = "PI" });
estados.Add(new Estado() { Nome = "Rio de Janeiro", Sigla = "RJ" });
estados.Add(new Estado() { Nome = "Rio Grande do Norte", Sigla = "RN" });
estados.Add(new Estado() { Nome = "Rio Grande do Sul", Sigla = "RS" });
estados.Add(new Estado() { Nome = "Rondônia", Sigla = "RO" });
estados.Add(new Estado() { Nome = "Roraima", Sigla = "RR" });
estados.Add(new Estado() { Nome = "Santa Catarina", Sigla = "SC" });
estados.Add(new Estado() { Nome = "São Paulo", Sigla = "SP" });
estados.Add(new Estado() { Nome = "Sergipe", Sigla = "SE" });
estados.Add(new Estado() { Nome = "Tocantins", Sigla = "TO" });
foreach (Estado estado in estados)
{
context.Estados.AddOrUpdate(x => x.EstadoID, estado);
}
context.SaveChanges();
}