그래서 여기에 약간 흥미로운 문제가 있습니다. 내가 달성하고자하는 것은 목록에 문자열 변수를 에서 사이에 추가 한 다음 나중에 다른 문자열과 비교하는 것입니다. 지금까지 코드 아래 사용하여이를 달성 할 수C# 값이있는 문자열 변수를 모든 System.Collections 클래스에 추가하고 검색하는 방법
var list = new List<string>();
var item_1 = "USA";
var item_2 = "Canada";
var item_3 = "Cuba";
...................
var item_N = "Country_N";
list.Add(item_1);
list.Add(item_2);
list.Add(item_3);
.................
list.Add(item_N);
그리고 다른 캐릭터와 비교는 (FluentAssertions 클래스를 사용) 등의 아래에 보이는 : 여기 볼 수 있습니다
list[0].Should().Match(stringToCompare_1);
list[1].Should().Match(stringToCompare_2);
list[2].Should().Match(stringToCompare_3);
가장 큰 문제는 그것이 일종의 어떤 문자열이 목록의 특정 색인에 추가되었는지 기억하기가 어렵습니다 (코드 사이의 멈출 수없는 스크롤은 지루합니다). 내 질문 :이 상황을 처리하는 더 우아한 방법이 있습니까? 아래처럼 보일 수 있습니다 뭔가 (List 클래스의 방법 ValueOf은 허구) :
var list = new List<string>();
var item_1_USA = "USA";
var item_2_Canada = "Canada";
var item_3_Cuba = "Cuba";
list.ValueOf(item_1_USA).Should().Match(stringToCompare_1);
list.ValueOf(item_1_Canada).Should().Match(stringToCompare_2);
list.ValueOf(item_1_Cuba).Should().Match(stringToCompare_3);
내가 달성하기 위해 노력하고있어 명확히하기 위해 질문을 편집 (@Postlagerkarte 포함) 제안으로 많은. 웹 응용 프로그램을 테스트 중이며이 응용 프로그램의 모든 단계 (엔진 예약)를 진행하면서 사용자의 이름, 성, 전자 메일 주소, 전화 번호 등 다양한 정보를 캡처하고 저장해야합니다. 캡처 된 정보의 양이 때로는 2000 개를 초과 할 수 있습니다. 현재 데이터 구조 리스트을 사용하고 있습니다. 나중에, 신청서의 마지막 단계에서 저의 저장된 값과이 마지막 페이지의 현재 값을 비교해야합니다. 예를 들어, 예약 엔진의 2 단계에서 캡처 한 사용자의 이름이 최종 단계의 값과 일치해야합니다. 목록포함 메서드는 잘못된 정보의 유효성을 검사 할 수 있으므로 여기에 적합하지 않습니다. list[0]....list[N]
을 사용하여 값에 액세스하는 것은 매우 불편합니다. 그 색인에 정확히 무엇이 저장되었는지 잊을 수 있습니다. 지금 코드를 스크롤하여 돌아와서 해결하고 있습니다. 모든 현명한 탐색이 인정됩니다.
색인이 항상 일치합니까? (item_1은 stringToCompare_1과 비교되어야 함). 개별 변수를 비교하는 경우 왜 목록이 필요합니까? 잠재적으로 수천 개의 개별 변수가있을 때 왜 더 "우아한"솔루션을 찾고 있습니까? – maccettura
인덱스가 항상 일치하지 않는 문제가 있습니다 ... – GordonFreaman
질문을 명확히하는 것이 좋습니다. 필요한 것을 이해하는 데 어려움을 겪고 있습니다. – maccettura