2017-01-18 5 views
2

Я следую this tutorial, используя Visual Studio Community 2015 v 14.0.25431.01 Update 3 и MS .NET Framework v 4.6.91586, но получаю следующее сообщение об ошибке при попытке подделать контроллер , как описано:Entity Framework Core 1.0 не подсистемы контроля и просмотра

Error

Я перепробовал все предложенные решения here и here, но безрезультатно. Да, также попытался (а) создать проект.

Вот соответствующий код моего проекта.

Студент Модель:

using System; 
using System.Collections.Generic; 

namespace ContosoUniversity.Models 
{ 
    public class Student 
    { 
     public int ID { get; set; } 
     public string LastName { get; set; } 
     public string FirstMidName { get; set; } 
     public DateTime EnrollmentDate { get; set; } 

     public ICollection<Enrollment> Enrollments { get; set; } 
    } 
} 

SchoolContext:

public class SchoolContext : DbContext 
    { 
     public SchoolContext(DbContextOptions<SchoolContext> options) : base(options) 
     { 
     } 

     public DbSet<Course> Courses { get; set; } 
     public DbSet<Enrollment> Enrollments { get; set; } 
     public DbSet<Student> Students { get; set; } 

     protected override void OnModelCreating(ModelBuilder modelBuilder) 
     { 
      modelBuilder.Entity<Course>().ToTable("Course"); 
      modelBuilder.Entity<Enrollment>().ToTable("Enrollment"); 
      modelBuilder.Entity<Student>().ToTable("Student"); 
     } 

    } 

Добавлена ​​SchoolContext к услугам в startup.cs:

public void ConfigureServices(IServiceCollection services) 
     { 
      // Add framework services. 
      services.AddApplicationInsightsTelemetry(Configuration); 

      services.AddDbContext<SchoolContext>(options => 
       options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))); 

И это мой ConnectionString в appSetting.json :

"ConnectionStrings": { 
    "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=aspnet-ContosoUniversity-75b88406-9d10-4237-814a-3f725b9b4e3d;Trusted_Connection=True;MultipleActiveResultSets=true" 
    } 

ответ

1

Хорошо, поэтому мне удалось решить проблему отсутствия конструктора без параметров. Как было предложено here, я просто предоставил конструкторы как класс DbContext, а также класс модели как таковые:

public Student() { } 

Теперь я получаю другую ошибку. Думаю, мне нужно ставить его в качестве нового вопроса. Я буду, но для чего это стоит, это часть журнала ошибок:

 Attempting to figure out the EntityFramework metadata for the model and DbContext: Student 
    Exception has been thrown by the target of an invocation. StackTrace: 
     at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) 
     at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) 
     at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) 
     at Microsoft.AspNetCore.Hosting.Internal.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder) 
     at Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication() 
     at Microsoft.AspNetCore.Hosting.WebHostBuilder.Build() 
     at Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.EntityFrameworkServices.TryCreateContextUsingAppCode(Type dbContextType, ModelType startupType) 
    A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 52 - Unable to locate a Local Database Runtime installation. Verify that SQL Server Express is properly installed and that the Local Database Runtime feature is enabled.) StackTrace: 
... 
    System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions) 
    There is no entity type Student on DbContext ContosoUniversity.Data.SchoolContext at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject,... 
+0

Как выясняется, моя установка VS 2015 была как-то испорчена. Переустановленные и строительные леса работают отлично - если очень медленно (по сравнению с Rails). – PakiPat

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

  • Нет связанных вопросов^_^