2014-03-02 3 views
0

문제 : ASP MVC 코드를 먼저 사용합니다. 하나의 기본 모델과 50 개의 필드 서브 모델 100 개 서브 모델은 기본 모델 에서 확장됩니다. :많은 데이터베이스 테이블이 처음 배포 된 ASP MVC 프로젝트는 매우 오랜 시간이 걸립니다 (10 분 초과)

public class SPBase 
{ 
    public int Id { get; set; } 

    public string ttt { get; set; } 
    public string s1 { get; set; } 
    public decimal d1 { get; set; } 
    public DateTime t1 { get; set; } 
    public int i1 { get; set; } 
    public string s2 { get; set; } 
    public decimal d2 { get; set; } 
    public DateTime t2 { get; set; } 
    public int i2 { get; set; } 
    public string s3 { get; set; } 
    public decimal d3 { get; set; } 
    public DateTime t3 { get; set; } 
    public int i3 { get; set; } 
    public string s4 { get; set; } 
    public decimal d4 { get; set; } 
    public DateTime t4 { get; set; } 
    public int i4 { get; set; } 
    public string s5 { get; set; } 
    public decimal d5 { get; set; } 
    public DateTime t5 { get; set; } 
    public int i5 { get; set; } 
    public string s6 { get; set; } 
    public decimal d6 { get; set; } 
    public DateTime t6 { get; set; } 
    public int i6 { get; set; } 
    public string s7 { get; set; } 
    public decimal d7 { get; set; } 
    public DateTime t7 { get; set; } 
    public int i7 { get; set; } 
    public string s8 { get; set; } 
    public decimal d8 { get; set; } 
    public DateTime t8 { get; set; } 
    public int i8 { get; set; } 
    public string s9 { get; set; } 
    public decimal d9 { get; set; } 
    public DateTime t9 { get; set; } 
    public int i9 { get; set; } 
    public string s10 { get; set; } 
    public decimal d10 { get; set; } 
    public DateTime t10 { get; set; } 
    public int i10 { get; set; } 
    public string s11 { get; set; } 
    public decimal d11 { get; set; } 
    public DateTime t11 { get; set; } 
    public int i11 { get; set; } 
    public string s12 { get; set; } 
    public decimal d12 { get; set; } 
    public DateTime t12 { get; set; } 
    public int i12 { get; set; } 
    public string s13 { get; set; } 
    public decimal d13 { get; set; } 
    public DateTime t13 { get; set; } 
    public int i13 { get; set; } 
    public string s14 { get; set; } 
    public decimal d14 { get; set; } 
    public DateTime t14 { get; set; } 
    public int i14 { get; set; } 
    public string s15 { get; set; } 
    public decimal d15 { get; set; } 
    public DateTime t15 { get; set; } 
    public int i15 { get; set; } 
    public string s16 { get; set; } 
    public decimal d16 { get; set; } 
    public DateTime t16 { get; set; } 
    public int i16 { get; set; } 
    public string s17 { get; set; } 
    public decimal d17 { get; set; } 
    public DateTime t17 { get; set; } 
    public int i17 { get; set; } 
    public string s18 { get; set; } 
    public decimal d18 { get; set; } 
    public DateTime t18 { get; set; } 
    public int i18 { get; set; } 
    public string s19 { get; set; } 
    public decimal d19 { get; set; } 
    public DateTime t19 { get; set; } 
    public int i19 { get; set; } 
    public string s20 { get; set; } 
    public decimal d20 { get; set; } 
    public DateTime t20 { get; set; } 
    public int i20 { get; set; } 
    public string s21 { get; set; } 
    public decimal d21 { get; set; } 
    public DateTime t21 { get; set; } 
    public int i21 { get; set; } 
    public string s22 { get; set; } 
    public decimal d22 { get; set; } 
    public DateTime t22 { get; set; } 
    public int i22 { get; set; } 
    public string s23 { get; set; } 
    public decimal d23 { get; set; } 
    public DateTime t23 { get; set; } 
    public int i23 { get; set; } 
    public string s24 { get; set; } 
    public decimal d24 { get; set; } 
    public DateTime t24 { get; set; } 
    public int i24 { get; set; } 
    public string s25 { get; set; } 
    public decimal d25 { get; set; } 
    public DateTime t25 { get; set; } 
    public int i25 { get; set; } 
    public string s26 { get; set; } 
    public decimal d26 { get; set; } 
    public DateTime t26 { get; set; } 
    public int i26 { get; set; } 
    public string s27 { get; set; } 
    public decimal d27 { get; set; } 
    public DateTime t27 { get; set; } 
    public int i27 { get; set; } 
    public string s28 { get; set; } 
    public decimal d28 { get; set; } 
    public DateTime t28 { get; set; } 
    public int i28 { get; set; } 
    public string s29 { get; set; } 
    public decimal d29 { get; set; } 
    public DateTime t29 { get; set; } 
    public int i29 { get; set; } 
    public string s30 { get; set; } 
    public decimal d30 { get; set; } 
    public DateTime t30 { get; set; } 
    public int i30 { get; set; } 
    public string s31 { get; set; } 
    public decimal d31 { get; set; } 
    public DateTime t31 { get; set; } 
    public int i31 { get; set; } 
    public string s32 { get; set; } 
    public decimal d32 { get; set; } 
    public DateTime t32 { get; set; } 
    public int i32 { get; set; } 
    public string s33 { get; set; } 
    public decimal d33 { get; set; } 
    public DateTime t33 { get; set; } 
    public int i33 { get; set; } 
    public string s34 { get; set; } 
    public decimal d34 { get; set; } 
    public DateTime t34 { get; set; } 
    public int i34 { get; set; } 
    public string s35 { get; set; } 
    public decimal d35 { get; set; } 
    public DateTime t35 { get; set; } 
    public int i35 { get; set; } 
    public string s36 { get; set; } 
    public decimal d36 { get; set; } 
    public DateTime t36 { get; set; } 
    public int i36 { get; set; } 
    public string s37 { get; set; } 
    public decimal d37 { get; set; } 
    public DateTime t37 { get; set; } 
    public int i37 { get; set; } 
    public string s38 { get; set; } 
    public decimal d38 { get; set; } 
    public DateTime t38 { get; set; } 
    public int i38 { get; set; } 
    public string s39 { get; set; } 
    public decimal d39 { get; set; } 
    public DateTime t39 { get; set; } 
    public int i39 { get; set; } 
    public string s40 { get; set; } 
    public decimal d40 { get; set; } 
    public DateTime t40 { get; set; } 
    public int i40 { get; set; } 
    public string s41 { get; set; } 
    public decimal d41 { get; set; } 
    public DateTime t41 { get; set; } 
    public int i41 { get; set; } 
    public string s42 { get; set; } 
    public decimal d42 { get; set; } 
    public DateTime t42 { get; set; } 
    public int i42 { get; set; } 
    public string s43 { get; set; } 
    public decimal d43 { get; set; } 
    public DateTime t43 { get; set; } 
    public int i43 { get; set; } 
    public string s44 { get; set; } 
    public decimal d44 { get; set; } 
    public DateTime t44 { get; set; } 
    public int i44 { get; set; } 
    public string s45 { get; set; } 
    public decimal d45 { get; set; } 
    public DateTime t45 { get; set; } 
    public int i45 { get; set; } 
    public string s46 { get; set; } 
    public decimal d46 { get; set; } 
    public DateTime t46 { get; set; } 
    public int i46 { get; set; } 
    public string s47 { get; set; } 
    public decimal d47 { get; set; } 
    public DateTime t47 { get; set; } 
    public int i47 { get; set; } 
    public string s48 { get; set; } 
    public decimal d48 { get; set; } 
    public DateTime t48 { get; set; } 
    public int i48 { get; set; } 
    public string s49 { get; set; } 
    public decimal d49 { get; set; } 
    public DateTime t49 { get; set; } 
    public int i49 { get; set; } 
    public string s50 { get; set; } 
    public decimal d50 { get; set; } 
    public DateTime t50 { get; set; } 
    public int i50 { get; set; } 
} 

서브 모델 :

public class SP2 : SPBase { } 
public class SP3 : SPBase { } 
public class SP4 : SPBase { } 
public class SP5 : SPBase { } 
public class SP6 : SPBase { } 
public class SP7 : SPBase { } 
public class SP8 : SPBase { } 
public class SP9 : SPBase { } 
public class SP10 : SPBase { } 
public class SP11 : SPBase { } 
public class SP12 : SPBase { } 
public class SP13 : SPBase { } 
public class SP14 : SPBase { } 
public class SP15 : SPBase { } 
public class SP16 : SPBase { } 
public class SP17 : SPBase { } 
public class SP18 : SPBase { } 
public class SP19 : SPBase { } 
public class SP20 : SPBase { } 
public class SP21 : SPBase { } 
public class SP22 : SPBase { } 
public class SP23 : SPBase { } 
public class SP24 : SPBase { } 
public class SP25 : SPBase { } 
public class SP26 : SPBase { } 
public class SP27 : SPBase { } 
public class SP28 : SPBase { } 
public class SP29 : SPBase { } 
public class SP30 : SPBase { } 
public class SP31 : SPBase { } 
public class SP32 : SPBase { } 
public class SP33 : SPBase { } 
public class SP34 : SPBase { } 
public class SP35 : SPBase { } 
public class SP36 : SPBase { } 
public class SP37 : SPBase { } 
public class SP38 : SPBase { } 
public class SP39 : SPBase { } 
public class SP40 : SPBase { } 
public class SP41 : SPBase { } 
public class SP42 : SPBase { } 
public class SP43 : SPBase { } 
public class SP44 : SPBase { } 
public class SP45 : SPBase { } 
public class SP46 : SPBase { } 
public class SP47 : SPBase { } 
public class SP48 : SPBase { } 
public class SP49 : SPBase { } 
public class SP50 : SPBase { } 
public class SP51 : SPBase { } 
public class SP52 : SPBase { } 
public class SP53 : SPBase { } 
public class SP54 : SPBase { } 
public class SP55 : SPBase { } 
public class SP56 : SPBase { } 
public class SP57 : SPBase { } 
public class SP58 : SPBase { } 
public class SP59 : SPBase { } 
public class SP60 : SPBase { } 
public class SP61 : SPBase { } 
public class SP62 : SPBase { } 
public class SP63 : SPBase { } 
public class SP64 : SPBase { } 
public class SP65 : SPBase { } 
public class SP66 : SPBase { } 
public class SP67 : SPBase { } 
public class SP68 : SPBase { } 
public class SP69 : SPBase { } 
public class SP70 : SPBase { } 
public class SP71 : SPBase { } 
public class SP72 : SPBase { } 
public class SP73 : SPBase { } 
public class SP74 : SPBase { } 
public class SP75 : SPBase { } 
public class SP76 : SPBase { } 
public class SP77 : SPBase { } 
public class SP78 : SPBase { } 
public class SP79 : SPBase { } 
public class SP80 : SPBase { } 
public class SP81 : SPBase { } 
public class SP82 : SPBase { } 
public class SP83 : SPBase { } 
public class SP84 : SPBase { } 
public class SP85 : SPBase { } 
public class SP86 : SPBase { } 
public class SP87 : SPBase { } 
public class SP88 : SPBase { } 
public class SP89 : SPBase { } 
public class SP90 : SPBase { } 
public class SP91 : SPBase { } 
public class SP92 : SPBase { } 
public class SP93 : SPBase { } 
public class SP94 : SPBase { } 
public class SP95 : SPBase { } 
public class SP96 : SPBase { } 
public class SP97 : SPBase { } 
public class SP98 : SPBase { } 
public class SP99 : SPBase { } 
public class SP100 : SPBase { } 

DBContext :

public class ApplicationDbContext : IdentityDbContext<ApplicationUser> 
{ 
    public ApplicationDbContext() 
     : base("DefaultConnection") 
    { 
    } 

    public DbSet<SP2> SP2 { get; set; } 
    public DbSet<SP3> SP3 { get; set; } 
    public DbSet<SP4> SP4 { get; set; } 
    public DbSet<SP5> SP5 { get; set; } 
    public DbSet<SP6> SP6 { get; set; } 
    public DbSet<SP7> SP7 { get; set; } 
    public DbSet<SP8> SP8 { get; set; } 
    public DbSet<SP9> SP9 { get; set; } 
    public DbSet<SP10> SP10 { get; set; } 
    public DbSet<SP11> SP11 { get; set; } 
    public DbSet<SP12> SP12 { get; set; } 
    public DbSet<SP13> SP13 { get; set; } 
    public DbSet<SP14> SP14 { get; set; } 
    public DbSet<SP15> SP15 { get; set; } 
    public DbSet<SP16> SP16 { get; set; } 
    public DbSet<SP17> SP17 { get; set; } 
    public DbSet<SP18> SP18 { get; set; } 
    public DbSet<SP19> SP19 { get; set; } 
    public DbSet<SP20> SP20 { get; set; } 
    public DbSet<SP21> SP21 { get; set; } 
    public DbSet<SP22> SP22 { get; set; } 
    public DbSet<SP23> SP23 { get; set; } 
    public DbSet<SP24> SP24 { get; set; } 
    public DbSet<SP25> SP25 { get; set; } 
    public DbSet<SP26> SP26 { get; set; } 
    public DbSet<SP27> SP27 { get; set; } 
    public DbSet<SP28> SP28 { get; set; } 
    public DbSet<SP29> SP29 { get; set; } 
    public DbSet<SP30> SP30 { get; set; } 
    public DbSet<SP31> SP31 { get; set; } 
    public DbSet<SP32> SP32 { get; set; } 
    public DbSet<SP33> SP33 { get; set; } 
    public DbSet<SP34> SP34 { get; set; } 
    public DbSet<SP35> SP35 { get; set; } 
    public DbSet<SP36> SP36 { get; set; } 
    public DbSet<SP37> SP37 { get; set; } 
    public DbSet<SP38> SP38 { get; set; } 
    public DbSet<SP39> SP39 { get; set; } 
    public DbSet<SP40> SP40 { get; set; } 
    public DbSet<SP41> SP41 { get; set; } 
    public DbSet<SP42> SP42 { get; set; } 
    public DbSet<SP43> SP43 { get; set; } 
    public DbSet<SP44> SP44 { get; set; } 
    public DbSet<SP45> SP45 { get; set; } 
    public DbSet<SP46> SP46 { get; set; } 
    public DbSet<SP47> SP47 { get; set; } 
    public DbSet<SP48> SP48 { get; set; } 
    public DbSet<SP49> SP49 { get; set; } 
    public DbSet<SP50> SP50 { get; set; } 
    public DbSet<SP51> SP51 { get; set; } 
    public DbSet<SP52> SP52 { get; set; } 
    public DbSet<SP53> SP53 { get; set; } 
    public DbSet<SP54> SP54 { get; set; } 
    public DbSet<SP55> SP55 { get; set; } 
    public DbSet<SP56> SP56 { get; set; } 
    public DbSet<SP57> SP57 { get; set; } 
    public DbSet<SP58> SP58 { get; set; } 
    public DbSet<SP59> SP59 { get; set; } 
    public DbSet<SP60> SP60 { get; set; } 
    public DbSet<SP61> SP61 { get; set; } 
    public DbSet<SP62> SP62 { get; set; } 
    public DbSet<SP63> SP63 { get; set; } 
    public DbSet<SP64> SP64 { get; set; } 
    public DbSet<SP65> SP65 { get; set; } 
    public DbSet<SP66> SP66 { get; set; } 
    public DbSet<SP67> SP67 { get; set; } 
    public DbSet<SP68> SP68 { get; set; } 
    public DbSet<SP69> SP69 { get; set; } 
    public DbSet<SP70> SP70 { get; set; } 
    public DbSet<SP71> SP71 { get; set; } 
    public DbSet<SP72> SP72 { get; set; } 
    public DbSet<SP73> SP73 { get; set; } 
    public DbSet<SP74> SP74 { get; set; } 
    public DbSet<SP75> SP75 { get; set; } 
    public DbSet<SP76> SP76 { get; set; } 
    public DbSet<SP77> SP77 { get; set; } 
    public DbSet<SP78> SP78 { get; set; } 
    public DbSet<SP79> SP79 { get; set; } 
    public DbSet<SP80> SP80 { get; set; } 
    public DbSet<SP81> SP81 { get; set; } 
    public DbSet<SP82> SP82 { get; set; } 
    public DbSet<SP83> SP83 { get; set; } 
    public DbSet<SP84> SP84 { get; set; } 
    public DbSet<SP85> SP85 { get; set; } 
    public DbSet<SP86> SP86 { get; set; } 
    public DbSet<SP87> SP87 { get; set; } 
    public DbSet<SP88> SP88 { get; set; } 
    public DbSet<SP89> SP89 { get; set; } 
    public DbSet<SP90> SP90 { get; set; } 
    public DbSet<SP91> SP91 { get; set; } 
    public DbSet<SP92> SP92 { get; set; } 
    public DbSet<SP93> SP93 { get; set; } 
    public DbSet<SP94> SP94 { get; set; } 
    public DbSet<SP95> SP95 { get; set; } 
    public DbSet<SP96> SP96 { get; set; } 
    public DbSet<SP97> SP97 { get; set; } 
    public DbSet<SP98> SP98 { get; set; } 
    public DbSet<SP99> SP99 { get; set; } 
    public DbSet<SP100> SP100 { get; set; } 
} 
배포 IIS를하고 Visual Studio에서 디버그 2013

I'v 몇 가지 테스트를했을 때 더 많은 시간을 출시 할 때

그것은 시작 10 분 이상 소요되는 시간 비용은 모델

의 수에 따라 것 같다

제안 사항에 감사드립니다.

+0

즉석 제안을 내 마음에 오는에 6.0.0.0에서 EntityFramework를 업그레이드 당신이 당신의 데이터베이스 스키마 – gaurav

답변

-1

마지막으로 해결됨! 트릭은 다음과 같습니다 6.1.0

0

Global.asax.cs 파일의 Application_start 메소드에서 데이터베이스 초기화 프로그램을 변경해보십시오. 의 라인을 따라

뭔가 :

protected void Application_Start() { Database.SetInitializer(new DropCreateDatabaseIfModelChanges<ApplicationDbContext>()); ... }

하지만 당신은 당신이 데이터베이스 모델을 변경하면이 특정 예제는 모든 데이터를 파괴 할 것이라는 점을 기억해야한다. 이 방법이 효과적이고 작동하면 마이그레이션을 활성화하고 사용자 지정 마이그레이션 마이그레이션 구성을 만들고이를 사용하여 모든 데이터를 손실하지 않고 db를 업데이트 할 수 있습니다. 마이그레이션에 대한 자세한 내용은 여기를 참조하십시오. http://www.codeproject.com/Articles/674760/Code-First-Migration-and-Extending-Identity-Accoun

+0

바실에 비정규을 적용하려고해야한다는 것입니다, 감사 실제로 응답 에 대한, I'v을 이미 사용 : 가) 공공 클래스 초기화 : DropCreateDatabaseIfModelChanges { 보호 재정의 무효 씨 (ApplicationDbContext의 데시벨) {} } 어쨌든 I'v은 또한 당신의 제안을 시도 : 사용 Database.SetInitializer을 (새로운 DropCr eateDatabaseIfModelChanges ()); on Application_Start() 결과는 모델 필드를 변경 한 다음 프로젝트를 다시 빌드하고 Visual Studio에서 "디버깅하지 않고 시작"을 사용합니다. – user1521398

관련 문제