2014-03-02 2 views
0

vs2013을 실행하는 웹 양식 응용 프로그램이 있습니다. 코드 첫 번째 모델을 사용하여 응용 프로그램을 작성합니다.오류 - 'GetSuppliers'이름이 현재 컨텍스트에 없습니다.

나는 초기 데이터를 입력하기 위해 datacontext 클래스와 initialiser 클래스를 가지고있다. 모델을 변경하고 클래스 간의 관계를 변경하고 4 개를 더 추가하기 전까지는 모든 것이 잘 작동했습니다. 이제 initialiser 클래스에서 네 개의 오류가 발생합니다. "이름 'xxxxx'은 현재 컨텍스트에 존재하지 않습니다."

나는 솔루션을 청소하고 다시 만들었습니다. 내 컴퓨터를 다시 시작했습니다. 나는 그 밖의 무엇을 시도해야할지 모른다. 어떤 도움을 주시면 감사하겠습니다.

myDataContext :

using System.Data.Entity; 
using System.Collections.Generic; 

namespace YPGOOS.Models 
{ 
    public class myDataContext : DbContext 
    { 
     public myDataContext() : base("YPGOOS") { } 

     public DbSet<Category> Categories { get; set; } 
     public DbSet<Style> Styles { get; set; } 
     public DbSet<Product> Products { get; set; } 
     public DbSet<Size> Sizes { get; set; } 
     public DbSet<QuantityBreak> QuantityBreaks { get; set; } 
     public DbSet<Stock> Stocks { get; set; } 
     public DbSet<Supplier> Suppliers { get; set; } 
     public DbSet<Finish> Finishes { get; set; } 
     public DbSet<FinishConstraint> FinishConstraints { get; set; } 
     public DbSet<FinishAttribute> FinishAttributes { get; set; } 
    } 
} 

다음 myDatabaseInitialiser 클래스 : 여기

코드의

using System.Collections.Generic; 
using System.Data.Entity; 

namespace YPGOOS.Models 
{ 
    //public class myDatabaseInitialiser : DropCreateDatabaseIfModelChanges<myDataContext> 
    public class myDatabaseInitialiser : DropCreateDatabaseAlways<myDataContext> 
    { 
     protected override void Seed(myDataContext context) 
     { 
      GetCategories().ForEach(c => context.Categories.Add(c)); 
      GetProducts().ForEach(p => context.Products.Add(p)); 
      GetSizes().ForEach(s => context.Sizes.Add(s)); 
      GetQuantityBreaks().ForEach(q => context.QuantityBreaks.Add(q)); 
      GetStyles().ForEach(st => context.Styles.Add(st)); 
      GetStocks().ForEach(x => context.Stocks.Add(x)); 
      GetSuppliers().ForEach(su => context.Suppliers.Add(su)); 
      GetFinishes().ForEach(f => context.Finishes.Add(f)); 
      GetFinishConstraints().ForEach(fc => context.FinishConstraints.Add(fc)); 
      GetFinishAttributes().ForEach(fa => context.FinishAttributes.Add(fa)); 
     } 

     private static List<Category> GetCategories() 
     { 
      var categories = new List<Category> { 
       new Category 
       { 
        CategoryID = 1, etc 

내가 최근에 마지막 4를 추가; GetSuppliers, GetFinishes, GetFinishConstraints, GetFinishAttributes 그리고이 4에 있습니다. 오류가 발생했습니다.

using System.Collections.Generic; 
using System.ComponentModel.DataAnnotations; 

namespace YPGOOS.Models 
{ 
    public class Supplier 
    { 
     [ScaffoldColumn(false)] 
     public int SupplierID { get; set; } 

     [Required, StringLength(100), Display(Name = "Supplier Name")] 
     public string SupplierName { get; set; } 

     [Required, StringLength(4), Display(Name = "Supplier Code")] 
     public string SupplierCode { get; set; } 

     //Navigation Properties 
     public virtual ICollection<Product> Products { get; set; } 
     public virtual ICollection<Stock> Stocks { get; set; } 
     public virtual ICollection<Category> Categories { get; set; } 
    } 
} 

답변

0
public DbSet<Size> Suppliers { get; set; } 

왜 공급자 크기의 일반입니다 :

다음 공급 업체 클래스입니까? 당신은 Supplier 클래스가 있습니다. 그냥 오타입니까? Intellisense가 자동 고침처럼 행동하기 시작 했습니까?

+0

차드 주셔서 감사합니다. 단지 오타였습니다 :-) 인텔리 센스가 정상적으로 작동하지 않는 것 같습니다. 내가 거기에 있어야한다고 생각하지 않는 빨간색 구불 구불 한 선을 제거 할 수는 없습니다! – skella

0

진정한 초보자 문제에 대한 답을 얻기 위해 당혹스러워합니다. 간단히 말해 DatabaseInitialiser 클래스에서 GetSuppliers()라는 메서드가 없었습니다. 오류가 사라지 자마자 사라졌습니다.

관련 문제