MVC ニュース システムを作成しようとしました。私は、従業員と一緒に部門を作成するために使用されたpluralsightチュートリアルを使用することから始めました. 部署を「カテゴリー」に、社員を「ニュースポスト」に、自分の目的に合わせて考えを変えました。これで問題なく動作しますが、ニュース システムにカテゴリは必要ないので、カテゴリを削除したいと思います。しかし、これを行うと、エンティティフレームワークを使用してデータベースに追加できません。
次のようなデータソースのインターフェイスがあります。
INewMvcSiteDataSource
public interface INewMvcSiteDataSource
{
IQueryable<NewsPost> NewsPosts { get; }
void Save();
}
これは、DB Context クラスに継承されます。
NewMvcSiteDb
public class NewsMvcSiteDb : DbContext, INewMvcSiteDataSource
{
public NewsMvcSiteDb() : base("DefaultConnection")
{
}
public DbSet<NewsPost> NewsPosts { get; set; }
IQueryable<NewsPost> INewMvcSiteDataSource.NewsPosts
{
get { return NewsPosts; }
}
public void Save()
{
SaveChanges();
}
}
次に、コントローラーでそれを使用して、データベースにニュース投稿を追加します。
ニュースコントローラー
var newsPost = new NewsPost()
{
Subject = newsModel.Subject,
Content = newsModel.Content,
ImagePath = newsModel.ImagePath
};
_db.NewsPosts.Add(newsPost);
_db.Save();
しかし、ここで ADD が失敗し、次のメッセージが表示されます。 (using ディレクティブまたはアセンブリ参照がありませんか?)
エラーが示すように、IQueryable を使用することが原因ですが、他に方法がわかりません。
手伝ってくれませんか?
ありがとう。