2016-02-08 4 views
-3

Я сделал модели Entity в MVC, в первом приближении модели, и я хотел бы знать, как вставлять, удалять и изменять данные.Как использовать контекст в Entity Framework?

Я пытаюсь использовать

namespace EntityFrameworkModelFirst 
{ 
    using System; 
    using System.Data.Entity; 
    using System.Data.Entity.Infrastructure; 

    public partial class ModelFirstContainer : DbContext 
    { 
     public ModelFirstContainer() 
      : base("name=ModelFirstContainer") 
     { 
     } 

     protected override void OnModelCreating(DbModelBuilder modelBuilder) 
     { 
      throw new UnintentionalCodeFirstException(); 

     } 

     public virtual DbSet<Department> DepartmentSet { get; set; } 
     public virtual DbSet<Employee> EmployeeSet { get; set; } 
    } 

    using (var context = new ModelFirstContainer()) 
    {  
    // Perform data access using the context 
    } 

} 

Но, это делает ошибку мне. Ошибка: контекстное слово «var» может появляться только в объявлении локальной переменной или в коде сценария и отсутствует;. Действительно ли это сейчас? Где я могу это сделать? Какие файлы?

Спасибо

+0

Извините, я исправился. – ktom

ответ

1

Ваш помощью блок должен быть в методе. Вы не можете использовать его вне метода. Кроме того, я удалил ваше OnModelCreating, которое вызвало бы исключение.

using System; 
using System.Data.Entity; 
using System.Data.Entity.Infrastructure; 

namespace EntityFrameworkModelFirst 
{ 
    public partial class ModelFirstContainer : DbContext 
    { 
     public ModelFirstContainer() : base("name=ModelFirstContainer") 
     { 
     } 

     public virtual DbSet<Department> DepartmentSet { get; set; } 
     public virtual DbSet<Employee> EmployeeSet { get; set; } 
    } 

    public class SomeClass 
    { 
     public void DoSomeStuff() 
     { 
      using (var context = new ModelFirstContainer()) 
      {  
       // Perform data access using the context 
      } 
     } 
    } 
} 

using block используется с IDisposable объектов для обеспечения их получить должным образом утилизировать. ModelFirstContainer наследует от DbContext, который реализует IDisposable.

0

Учебник о том, как работать с Entity Framework DbContext можно найти здесь: Working with DbContext

public class ProductContext : DbContext 
{ 
    public DbSet<Category> Categories { get; set; } 
    public DbSet<Product> Products { get; set; } 
} 

using (var context = new ProductContext()) 
{  
    // Perform data access using the context 
} 
+1

Вы не должны отвечать на слишком широкие вопросы или не иметь четкой проблемы. – mason

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