반응형

.NET 8

오토매퍼: "나머지는 무시하세요"?

오토매퍼: "나머지는 무시하세요"? AutoMapper에게 명시적으로 매핑된 속성을 제외한 모든 속성을 무시하도록 지시할 수 있는 방법이 있습니까? 외부에서 변경될 가능성이 있는 외부 DTO 클래스가 있으며 새 속성을 추가하면 내 개체에 매핑하려고 할 때 기능이 손상(예외 발생)되기 때문에 각 속성이 명시적으로 무시되도록 지정하는 것을 피하고 싶습니다.제가 이해한 질문은 소스에 매핑된 필드가 없는 대상에 필드가 있다는 것입니다. 따라서 매핑되지 않은 대상 필드를 무시하는 방법을 찾는 것입니다. 이러한 확장 방법을 구현하고 사용하는 대신 단순히 사용할 수 있습니다. Mapper.CreateMap(MemberList.Source); 이제 자동 매핑기는 모든 소스 필드가 매핑되었는지만 확인하면 되며 그 반대는..

codememo 2023.06.02

#if RELEASE가 C#에서 DEBUG가 #처럼 작동합니까?

#if RELEASE가 C#에서 DEBUG가 #처럼 작동합니까? #if 컴파일러 디렉티브의 모든 예에서 "DEBUG"를 사용합니다.디버그 모드에서 컴파일할 때 실행하지 않을 코드를 제외하는 경우와 동일한 방법으로 "릴리스"를 사용할 수 있습니까?이 블록으로 둘러싸려는 코드는 많은 이메일을 보내고 테스트할 때 실수로 이메일을 보내고 싶지 않습니다.RELEASE정의되지 않았지만 사용할 수 있습니다. #if (!DEBUG) ... #endif 아니요, 당신이 일을 하지 않는 한 그럴 수 없어요. 여기서 중요한 부분은 DEBUG가 실제로 무엇인지이며, 컴파일러가 확인할 수 있는 일종의 상수입니다. 프로젝트 속성을 확인하면 빌드 탭 아래에 다음과 같은 세 가지가 있습니다. "조건부 컴파일 기호"라는 텍스트 상자 ..

codememo 2023.05.23

LINQ를 사용하여 문자열[]을 코드 한 줄에서 int[]로 변환

LINQ를 사용하여 문자열[]을 코드 한 줄에서 int[]로 변환 문자열 형식의 정수 배열이 있습니다. var arr = new string[] { "1", "2", "3", "4" }; 더 나아가려면 '실제' 정수 배열이 필요합니다. void Foo(int[] arr) { .. } 저는 그것을 캐스팅하려고 노력했지만 물론 실패했습니다. Foo(arr.Cast.ToArray()); 다음에 할 수 있습니다. var list = new List(arr.Length); arr.ForEach(i => list.Add(Int32.Parse(i))); // maybe Convert.ToInt32() is better? Foo(list.ToArray()); 또는 var list = new List(arr.Length..

codememo 2023.05.18

이벤트에서 모든 이벤트 핸들러를 제거하는 방법

이벤트에서 모든 이벤트 핸들러를 제거하는 방법 컨트롤에 새 이벤트 핸들러를 만들려면 다음 작업을 수행합니다. c.Click += new EventHandler(mainFormButton_Click); 또는 이 c.Click += mainFormButton_Click; 이벤트 핸들러를 제거하려면 이 작업을 수행합니다. c.Click -= mainFormButton_Click; 하지만 이벤트에서 모든 이벤트 핸들러를 제거하려면 어떻게 해야 합니까?MSDN 포럼에서 해결책을 찾았습니다.아래 샘플 코드는 모두 제거됩니다.Click에서 발생한 사건.button1. public partial class Form1 : Form { public Form1() { InitializeComponent(); button1...

codememo 2023.05.13

다양한 어레이 요소를 새 어레이로 복제하려면 어떻게 해야 합니까?

다양한 어레이 요소를 새 어레이로 복제하려면 어떻게 해야 합니까? 저는 10개의 요소로 구성된 X 배열을 가지고 있습니다.인덱스 3에서 시작하여 인덱스 7에서 끝나는 X의 모든 요소를 포함하는 새 배열을 만들고 싶습니다.물론 루프를 쉽게 작성할 수 있지만 코드를 최대한 깨끗하게 유지하고 싶습니다.C#에서 나를 위해 그것을 할 수 있는 방법이 있습니까? (의사 코드)와 같은 것: Array NewArray = oldArray.createNewArrayFromRange(int BeginIndex , int EndIndex) Array.Copy 제 요구에 맞지 않습니다.새 배열의 항목을 복제해야 합니다. Array.copy C-Style C-Style입니다.memcpy동등하게, 그것은 제가 찾고 있는 것이 아..

codememo 2023.05.13

의 기준 매개 변수와 출력 매개 변수 간의 차이입니다.그물

의 기준 매개 변수와 출력 매개 변수 간의 차이입니다.그물 이 질문에는 이미 다음과 같은 답이 있습니다. 'ref' 키워드와 'out' 키워드의 차이점은 무엇입니까? (28개 답변) 마감됨4년 전에. 사이의 차이점은 무엇입니까?ref그리고.out매개 변수.NET? 하나가 다른 하나보다 더 유용할 수 있는 상황은 무엇입니까?하나는 사용할 수 있고 다른 하나는 사용할 수 없는 코드 조각은 무엇입니까?- 를 의비슷니로 입니다. 유일한 차이점은 변수로 전달하는 변수입니다.out, 를 개매변수초필로요없는지매로 합니다.ref매개 변수는 어떤 것으로 설정되어야 합니다. int x; Foo(out x); // OK int y; Foo(ref y); // Error: y should be initialized befor..

codememo 2023.05.03

설명에서 Enum 특성 가져오기

설명에서 Enum 특성 가져오기 이 질문에는 이미 다음과 같은 답이 있습니다. 마감됨10년 전에. 중복 가능성: Description Attribute를 사용하여 열거값 나는 다음을 얻는 일반적인 확장 방법을 가지고 있습니다.Description의 속성.Enum: enum Animal { [Description("")] NotSet = 0, [Description("Giant Panda")] GiantPanda = 1, [Description("Lesser Spotted Anteater")] LesserSpottedAnteater = 2 } public static string GetDescription(this Enum value) { FieldInfo field = value.GetType().Get..

codememo 2023.05.03

C#에서 메서드 그룹이란 무엇입니까?

C#에서 메서드 그룹이란 무엇입니까? 다음과 같은 경우 "method group'에서 'string'으로 변환할 수 없습니다."와 같은 오류를 자주 접했습니다. var list = new List(); // ... snip list.Add(someObject.ToString); 물론 마지막 줄에 오타가 있었습니다. 왜냐하면 저는 호출 괄호를 잊어버렸기 때문입니다.ToString올바른 형식은 다음과 같습니다. var list = new List(); // ... snip list.Add(someObject.ToString()); // DoSomethingToMyString(str)); } var의 이름을 생략할 수 있습니다. public List GetStringStuff() { return somethi..

codememo 2023.05.03
반응형