C#에서 사용자 정의 클래스와 함께 in-buit 시스템 유형 (문자열, 목록 등)을 구별 할 수있는 방법이 있습니까?C#에서 사용자 정의 클래스로 in-buit 시스템 유형 차별화
답변
Type.Assembly
을 사용하여 어떤 어셈블리의 출처인지 확인하거나 Type.Namespace
을 사용하여 네임 스페이스를 가져올 수 있습니다. 나머지는 "기본 제공"정의에 따라 다릅니다. 예를 들어, 다음과 같이 말할 수 있습니다.
var builtIn = someType.Namespace.StartsWith("System");
그러나 원하는 것은 "어려운"정의가 아닙니다.
"System"네임 스페이스에 자신의 타입을 두지 못하게하는 방법은 없습니다. –
@KonradRudolph : 물론입니다. 그러나 네임 스페이스 표준에 유형을 넣는 것과 같습니다. 실제로는 발생하지 않아야합니다. – Jon
차이점은'namespace std'에 무엇이든 두는 것은 사실상 불법입니다 : 컴파일러가 그것을 받아들이는지 여부에 관계없이, 그렇게하는 프로그램은 깨졌습니다. .NET에서는이를 제한하는 엄격한 규칙이 없습니다. –
기본 제공 유형과 사용자 지정 유형 간에는 논리적이고 의미있는 차이가 없습니다.
유일한 차이점은 내장형이 mscorlib
어셈블리 또는 다른 프레임 워크 어셈블리 중 하나에 있다는 것입니다. 당신은 그 이상을 확인할 수 있습니다. 그러나, 나는이 정보의 유용성에 의문을 제기 할 것이다.
답변 해 주셔서 감사합니다. NamespaceA.Person과 NamespaceB.Person과 같은 두 개의 서로 다른 객체간에 속성을 자동으로 매핑하려고했습니다. 우리가 볼 수 있듯이 두 속성이 모두 비슷한 기본 유형을 가지고 있으면 쉽게 구현할 수 있습니다. 그러나 NamespaceA.Person에 Employee 유형의 속성이 있고 NamespaceB.Person에 EmployeeId (long 유형) 필드 만 매핑되어있는 경우 함수가 클래스를 발견했으며 클래스를 매핑하면 안된다는 것을 어떻게 이해합니까? long 유형의 속성에 ?? 대신에이 클래스 내에서 long 속성을 검색해야합니다. –
- 1. 관계형 데이터베이스의 사용자 정의 유형 시스템
- 2. 사용자 정의 사용자 클래스로 변환
- 3. 사용자 정의 티켓 시스템
- 4. 사용자 정의 포스트 유형
- 5. WSDL 파일을 사용하여 시스템 유형 정의
- 6. 사용자 정의 클래스로 배열 채우기 - 값 검색
- 7. 텍스트 파일을 사용자 정의 데이터 클래스로 읽어들입니다.
- 8. OpenCL 커널의 사용자 정의 유형
- 9. cx_Oracle 및 사용자 정의 유형
- 10. DataTables 및 사용자 정의 유형
- 11. 셰어 사용자 정의 필드 유형
- 12. 매핑의 사용자 정의 ID 유형
- 13. 배열에 사용자 정의 유형 추가
- 14. 사용자 정의 게시 유형 WordPress
- 15. C++ unordered_map 사용자 정의 유형
- 16. Postgres hashing 사용자 정의 유형
- 17. NHibernate의 차별화 된 유니온
- 18. mysql 집계 C에서 UDF (사용자 정의 함수)
- 19. C에서 소수점 형식의 사용자 정의 반올림
- 20. C에서 시스템 프로그래밍
- 21. PHP에서 사용자 정의 코드 생성 시스템 만들기
- 22. 장고에서 완전히 사용자 정의 된 로그인 시스템?
- 23. 코코아 시스템 컨텍스트 메뉴 사용자 정의
- 24. 메일 시스템 오류 배달 - 사용자 정의 제목
- 25. C에서 사용되는 데이터 유형
- 26. C에서 유형 오류
- 27. WP : 사용자 정의 포스트 유형, 404
- 28. 문자열에서 사용자 정의 유형으로 유형 변환
- 29. 사용자 정의 컨텐츠 유형 : XLink vs. Atom
- 30. 사용자 정의 필드 유형 상속 PropertySchema
"내장형 시스템 유형"이 의미하는 바를보다 잘 정의해야합니다. System. * 네임 스페이스의 모든 유형을 의미합니까? – Avish
예를 들어 사용자 정의 클래스 Person이있는 경우 모든 "내장 유형"을 검색하는 동안이 클래스를 반환하지 않아야합니다. 이것은 내가 사람의 대상을 가질 때마다 차별화하는 데 도움이 될 것입니다. –
예, 그렇지만 System.Xml.XmlReader를 반환해야합니까? System.Windows.UIElement는 어떻습니까? 사용자 정의 Person 클래스를 만들고 System 네임 스페이스에 넣으면 어떨까요? @ Konrad Rudolph는 "내장형"시스템 유형과 다른 유형을 구분하는 의미있는 구분이 없으므로이 점을 명확하게해야합니다. 어쩌면 당신은 당신이이 구별을 사용할 계획을 설명 할 수 있습니까? 어쩌면 더 간단한 해결책이있을 것입니다. – Avish