Я настраивал код первой миграции для изменения модели из Package Manager Console
, которая создает seed
метод в Configuration.cs
. я разместил свой код в Seed
метод, и он показывает ошибку в context.Movies.AddorUpdate (-----Как решить ошибку в Configuration.cs в коде первой миграции
он говорит :
Аргументы типа для метода «System.Data. Entity.Migrations.DbSetMigrationsExtensions.AddOrUpdate (System.Data.Entity.IDbSet, Params TEntity [])»не может быть выведено из эксплуатации. Попробуйте указать аргументы типа явно.
protected override void Seed(MvcMovie.Models.MovieDbContext context)
{
context.Movies.AddOrUpdate(
i => i.Title,
new Movie
{
Title = "When Harry Met Sally",
ReleaseDate = DateTime.Parse("1989-1-11"),
Genre = "Romantic Comedy",
Price = 7.99M
},
new Movie
{
Title = "Ghostbusters ",
ReleaseDate = DateTime.Parse("1984-3-13"),
Genre = "Comedy",
Price = 8.99M
},
new Movie
{
Title = "Ghostbusters 2",
ReleaseDate = DateTime.Parse("1986-2-23"),
Genre = "Comedy",
Price = 9.99M
}
);
}
Movie.cs
namespace MvcMovie.Models
{
public class Movie
{
public int ID
{
get;
set;
}
public string Title
{
get;
set;
}
[Display(Name="ReleaseDate")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:d}", ApplyFormatInEditMode = true)]
public DateTime ReleaseDate
{
get;
set;
}
public string Genre
{
get;
set;
}
public decimal Price
{
get;
set;
}
}
public class MovieDbContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}
}
Трудно сказать, не видя больше кода, как ваш класс MovieDbContext, но добавляя context.Movies.AddOrUpdate Можете решить проблему. –
swestner
попробовал. Не работает @swestner –
Что такое типовой тип для фильмов DbSet {T}? Вы можете вставить код для класса MovieDbContext. –