Mvc3 및 MvcScaffolding NuGet을 사용하여 새로운 MVC 3 파일럿 응용 프로그램을 만들고 있습니다. 이미 가지고있는 데이터베이스를 사용하기 전까지 모든 것이 원활하게 실행됩니다. 응용 프로그램의 형식으로 데이터베이스를 만드는 유지 :MVC 3 지정된 데이터베이스를 사용하는 대신 새 데이터베이스를 만듭니다.
projectname.Models.projectnameContext
내가 여기에 붙어있어, 내 connectionStrings 것은 :
<connectionStrings>
<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
<add name="EnginesTrackingEntities" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string="data source=WARCHLAPPY\SQLEXPRESS;initial catalog=[EnginesTracking];integrated security=True;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
하는 내 데이터베이스가 EnginesTracking 지정합니다.
업데이트하는 것은
나는 this example에서 데이터베이스 첫 번째 방법을 다음과 같은거야.
나는 완벽하게 작동하지만 응용 프로그램이 시작될 때 지정한 테이블을 사용하는 대신 새 테이블을 만듭니다.
유일한 한 가지 차이점은 내 프로젝트에는 databaseEntities
없다는 것입니다, 대신 내가 좀이 포기하고있어 수 8 단계
갱신 2
을 할 수있는 projectContext
있다 코드를 따라 가려합니다. 첫 번째 접근 방식은 파일럿이되는 데 많은 시간이 걸리기 때문입니다.
이
은 Model1.context.cs입니다 ://------------------------------------------------------------------------------
// <auto-generated>
// This code was generated from a template.
//
// Manual changes to this file may cause unexpected behavior in your application.
// Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace ErrorReportingSystem.Models{
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
public partial class EnginesTrackingEntities : DbContext
{
public EnginesTrackingEntities()
: base("name=EnginesTrackingEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
public DbSet<Engine_Part> Engine_Part { get; set; }
public DbSet<Engines> Engines { get; set; }
public DbSet<Error> Error { get; set; }
public DbSet<Has_error> Has_error { get; set; }
public DbSet<Locations> Locations { get; set; }
public DbSet<Operators> Operators { get; set; }
public DbSet<sysdiagrams> sysdiagrams { get; set; }
}
}
DbContext에 어떤 연결 문자열을 지정 하시겠습니까? –
@MarkOreta 당신은 무엇을 의미합니까? ado.net dbcontext에 대한 코드 생성을 추가 할 때 데이터베이스 지정 필드가 없습니다. –
죄송합니다, CodeFirst를 사용하고있는 줄 알았는데 - 연결 문자열이 업데이트되면 이름을 변경 하시겠습니까?생성 된 Designer 코드를 보면 사용할 연결 문자열을 알 수 있습니다. 다음과 같이 보입니다 : public Entities1() : base ("name = Entities1", "Entities1") –