현재 데이터베이스 ID를 포함한 관련 정보가있는 테스트 목록을 내 코드의 정적 변수에 저장하고 있습니다. 다음은 예입니다 :데이터베이스 ID 및 조회 이름을 저장하는 더 나은 방법
public static class IsokineticTests
{
// Cervical Spine Group
public static MyopathologyTest NeckFlexors = MyopathologyTest.Create(600, "Neck Flexors");
public static MyopathologyTest AnteriorObliques = MyopathologyTest.Create(601, "Anterior Obliques");
public static MyopathologyTest NeckExtensors = MyopathologyTest.Create(602, "Neck Extensors");
public static MyopathologyTest PosteriorObliques = MyopathologyTest.Create(603, "Posterior Obliques");
public static MyopathologyTest LateralFlexion = MyopathologyTest.Create(604, "Lateral Flexion");
// Shoulder Group
public static MyopathologyTest ShoulderAbductors = MyopathologyTest.Create(610, "Shoulder Abductors");
public static MyopathologyTest ShoulderExtensors = MyopathologyTest.Create(611, "Shoulder Extensors");
public static MyopathologyTest ShoulderFlexors = MyopathologyTest.Create(612, "Shoulder Flexors");
public static MyopathologyTest ShoulderLateralRotators = MyopathologyTest.Create(613, "Shoulder Lateral Rotators");
public static MyopathologyTest ShoulderMedialRotators = MyopathologyTest.Create(614, "Shoulder Medial Rotators");
}
이 다음 다른 정적 속성이 방법을 얻을 통해 테스트 그룹을 만드는 데 사용 얻을 :
public static class IsokineticTestGroups
{
public static IsokineticTestGroup CervicalSpine
{
get
{
return IsokineticTestGroup.Create("Cervical Spine",
new List<MyopathologyTest>
{
IsokineticTests.NeckFlexors,
IsokineticTests.AnteriorObliques,
IsokineticTests.NeckExtensors,
IsokineticTests.PosteriorObliques,
IsokineticTests.LateralFlexion
});
}
}
}
지금 데 문제는를 조회 할 수있는 방법이 본질적으로 존재하지 않습니다 Myopathology 특정 ID에 대한 테스트. 한 가지 해결책은 사전을 작성하고 ID를 키로 사용하여 이러한 모든 테스트를 사전에 수동으로 삽입하는 것입니다. 이것은 많은 코드를 반복하는 것처럼 보입니다.
이와 같은 것을 구현하는 올바른 방법은 무엇입니까? 필자는 테스트 데이터를 외부화하고, 런타임 중에 테스트를로드하고, 적절한 룩업 테이블과 그룹을 즉시 생성해야한다고 생각합니다. 이것이 내가보고 있어야하는 올바른 접근인가, 아니면 더 좋은 방법인가?
데이터베이스에 그룹을 비롯한 모든 데이터를 저장하지 않는 이유는 무엇입니까? – BobbyShaftoe
나는 이미 다른 것들 사이에서 테스트 결과를 위해 SQLite 데이터베이스를 사용하고 있으며, 나는 미래의 일부 데이터를 너무 어렵게 만들 것이라고 생각했다. 그러나 나는 당신과 Tim이 언급 한이 정보를 담고있는 별도의 데이터베이스를 가질 수 없었습니다. –