DB (응용 프로그램에서 사용하는)에 저장되어있는 정의를 응용 프로그램의 소스 코드에 사용하는 방법에 대한 아이디어를 얻고 싶습니다.DB에 저장된 정의를 소스 코드의 정의에 사용하는 방법은 무엇입니까?
예 :
데이터베이스
- 자동차
- CarTypeDefinitions
는 CarTypeDefinitions
의 행에 외래 키 Cars
링크 열에 따라서 유형을 정의 Cars
에 들어있는 자동차.
Cars
은 '애스턴 마틴 DB8', '레인지 로버' 및 '벤츠 악트 로스' 같은 항목이 포함되어 있습니다.
CarTypeDefinitions
은 '스포츠카', 'SUV' 및 '트럭' 같은 항목이 포함되어 있습니다.
소스 코드
지금 나뿐만 아니라 내 소스 코드에서 이러한 정의를 사용할 수 있도록하고 싶습니다. 따라서 어떻게 든 우리는 CarTypeDefinitions
테이블의 행과 소스 코드의 (바람직하게) 유형 안전 구현 간의 일종의 매핑을 생성해야합니다.
하나의 가능한 구현
(그리고 나는 특히 다른 솔루션 또는 이것에 대한 의견을 찾고 있어요) 내 마음에 오는 첫번째 것은 Enum
ECarTypeDefinitions
을 생성하는 것입니다.
public enum ECarTypeDefinitions
{
SportsCar = 1,
SUV = 2,
Truck = 3
}
이제 유형 안전 Enum
을 사용할 수있게되었습니다. 이 같은 :
public bool IsSportsCar(Car currentCar)
{
return (currentCar.CarType == ECarTypeDefinitions.SportsCar);
}
이 열거의 내용은 자동으로 생성 된 CarTypeDefinitions
테이블의 내용 (열거 형의 이름과 정수 값을 두 개의 추가 열을 추가)에서 일 것이다.
이렇게하면 다른 방식으로도 작동합니다. ECarTypeDefinitions
Enum
에서 CarTypeDefinitions
DB 테이블의 내용을 생성하십시오.
이 문제를 해결하는 다른 방법에 대해 듣고 싶습니다. 어떻게 이걸 처리 했니?
설명하는 것은 본질적으로 [개체 관계 매핑]입니다 (http://en.wikipedia.org/wiki/Object-Relational_Mapping). 제공된 링크에서 시작하여 더 깊게 파고 들어가서 결국 ORM을 원하는 언어로 사용하고 싶을 것입니다. – darioo
포인터를 가져 주셔서 감사합니다. 우리는 이미 응용 프로그램 개발에 C#과 함께 Entity Framework 4.0을 사용하고 있습니다. EF가 사용할 개체를 생성하는 동안 (예 :'CarTypeDefinition') 우리는 어떤 종류의 매핑이 필요합니다. 또는'CarTypeDefinition' 개체의 특정 인스턴스가 스포츠카를 설명한다는 것을 어떻게 알 수 있습니까? –