2013-08-21 2 views
1

예를 들어 다음 MVC 모델이 있습니다.새 MVC 4 모델을 만들거나 기존 속성을 중복 속성으로 사용해야합니까?

public class Fruits 
{ 
    public int FruitId {get;set;} 
    public string Name {get;set;} 
    public string Type {get;set;} 
    public double Price {get;set;} 
    public int InStock {get;set;} 
    public bool BulkDiscount {get;set;} 
    public string PhotoUrl {get;set;} 
    public string Url {get;set;} 

    public List<Fruits> SimilarFruits {get;set;} 
} 

이 모델은 관련된 데이터로 페이지를 채우는 데 사용됩니다. 그러나 이제는 사용자가 구입 한 과일 목록과 비슷한 과일 목록을 얻고 싶습니다.

데이터를 얻기 위해 데이터베이스 쿼리를 작성할 수 있습니다. 그러나

public string Name {get;set;} 
public string PhotoUrl {get;set;} 
public string Url {get;set;} 

그래서

List<Fruits> SimilarFruitList = new List<Fruits>(); 
+0

나에게 잘 어울립니다 – Miller

답변

2

내가 좋겠 과일의 목록을 만들 수 있습니다 제가 속성에만 관심이있어 비록 클래스 과일을 다시 사용하기위한 최선의 방법입니다 지금은 같은 클래스를 사용하십시오. 추가 수업은이 시점에서 부 풀릴 것입니다.

반환 할 데이터와 관련된 속성을 추가해야하는 경우에만 새 클래스를 만듭니다.

+0

가능한 8 가지 속성 중 3 가지만 사용하고 있더라도? – Tommassiov

+0

개인적으로 나는 그것이 문제라고 생각하지 않는다. 과일을 야채 (야채와는 반대로)로 돌려 주므로 코드에 여전히 의도가 표시되어 있다고 생각합니다. 또한 나는 약간 다른 모델과 뷰 모델을 가진 프로젝트를 보았습니다. 많은 수의 수업은 복잡하지 않은 감각을 도입 할뿐입니다. – Castrohenge

+0

다른 한편으로는 사용되지 않는 속성이 다른 개발자를 혼란스럽게 할 수 있다고 주장 할 수 있습니다. 이 경우 공통 속성을 사용하여 기본 Fruit 클래스를 만든 다음 추가 속성이 필요한 클래스를 상속 할 수 있습니다. – Castrohenge

관련 문제