2015-03-05 4 views
0

Работа с EF 6.1. Я создал два класса таблицы файлов:Тип DbContext не определен

Public Class Student 

    Public Property StudentID() As Integer 
    Public Property StudentName() As String 
    Public Property DateOfBirth() As DateTime 

End Class 

Public Class Standard 

    Public Property StandardID() As Integer 
    Public Property StandardName() As String 

End Class 

также создал один DbContext файл (SchoolContext.vb):

Imports System.Data.Entity 

Namespace TestDataAccess 

    Public Class SchoolContext 
     Inherits DbContext 

     Public Sub New() 
      MyBase.New(ConfigurationManager.ConnectionStrings("dbConnString").ConnectionString) 
     End Sub 

     Private _Students As DbSet(Of Student) 

     Private _Standards As DbSet(Of Standard) 

    End Class 

End Namespace 

В моей тестовой странице, я делаю ссылку на файл DbContext с помощью следующее:

Dim context As SchoolContext = New SchoolContext 

но он продолжает давать ошибку «Тип« SchoolContext »не определен». Даже попытался импортировать пространство имен TestDataAccess, но все же получил ошибку. Я установил EF в свой проект через NuGet, и он отображается в моем файле package.config, поэтому я знаю, что это не проблема.

<package id="EntityFramework" version="6.1.2" targetFramework="net451" /> 

Любые идеи, что может быть неправильным?

+0

Кажется, что на странице тестирования отсутствует оператор импорта. Если вы щелкнете правой кнопкой мыши по красному изгибу, где есть тип SchoolContext, предлагает ли он параметр Разрешить, включив пространство имен? –

+0

Трэвис, нет красной кривой, просто хочет, чтобы я изменил SchoolContext на HttpContext. Даже если я импортирую свое пространство имен DbContext в основном, даже оно не распознается. –

ответ

0

Я ног очень familiare с vb, но каков объем вашего DbContext. Должны ли _стандарты и _studente быть публичными, а не частными?

+0

Rik, да хороший глаз. Я забыл исправить этот код после сокращения моих операторов свойств до одной строки. Это, к сожалению, не разрешает мой тип. –

0

Вам нужна ссылка EntityFramework.dll (а не System.Data.Entity).

+0

И да make _standards и _students публично, как предложил Рик –

+0

Hasta. Я вижу файл EntityFramework.dll в моем справочном списке в разделе Ссылки в моем обозревателе решений. Пока я вижу это там, я должен быть хорошим, правильным? Или есть другое место, где я должен проверять? –

+0

Привет, Это странно. Я думаю, вы можете удалить эту ссылку и снова установить ее и надеяться, что она сработает. Помимо этого, у меня нет предложений. –