XML에서 C# 클래스 생성
XML 파일에서 C# 클래스를 생성할 수 있습니까?
VS 2012 이상 버전에서 .NET 4.5 프로젝트를 수행하는 경우 XML 파일을 클래스로 특수 붙여넣기만 하면 됩니다.
- XML 파일의 내용을 클립보드에 복사
- 편집기에서 클래스를 붙여넣을 위치를 선택합니다.
- 메뉴에서 다음을 선택합니다.
EDIT > Paste Special > Paste XML As Classes
D:\temp>xsd test.xml
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:\temp\test.xsd'.
D:\temp>xsd test.xsd /classes
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:\temp\test.cs'.
메모들
개발자 명령 프롬프트에서 디렉토리를 변경하는 방법에 대해 d:\temp로 답변하는 것이 유용할 수 있습니다.
다차원 배열에 대한 클래스를 생성하는 경우 XSD.exe 생성기에 버그가 있지만 해결 방법이 있습니다.
처음에 저는 페이스트 스페셜이 성배인 줄 알았어요!하지만 저는 그것을 시도했고 제 머리는 인디아나 존스 영화처럼 하얗게 변했습니다.
하지만 지금은 http://xmltocsharp.azurewebsites.net/ 을 사용하고 있고, 지금은 여전히 젊습니다.
다음은 생성된 부분입니다.
namespace Xml2CSharp
{
[XmlRoot(ElementName="entry")]
public class Entry {
[XmlElement(ElementName="hybrisEntryID")]
public string HybrisEntryID { get; set; }
[XmlElement(ElementName="mapicsLineSequenceNumber")]
public string MapicsLineSequenceNumber { get; set; }
나도 너와 같은 문제가 있어서 나만의 프로그램을 쓰기로 했어요.
저에게 "xml -> xsd -> classes" 경로의 문제는 그것이 완전히 유지할 수 없는 코드 덩어리를 생성했고 결국 그것을 터프하게 되었다는 것입니다.
그것은 결코 우아하지 않지만 저에게는 효과가 있었습니다.SimpleXmlToCode는 여기에서 구할 수 있습니다.
마음에 드신다면 제안을 해주세요.
svcutil(svcutil 질문)을 고려해야 합니다.
xsd.exe 및 svcutil은 모두 XML 스키마 파일(.xsd)에서 작동합니다.XML은 이 두 도구 중 하나에서 사용할 스키마 파일을 준수해야 합니다.
이를 위한 다양한 타사 도구도 존재합니다.
당신은 다린이 제안한 대로 xsd를 사용할 수 있습니다.
또한 test.xsd-file을 편집하여 보다 합리적인 스키마를 만드는 것이 좋습니다.
type="xs:string"로 변경 가능type="xs:int"정수 값의 경우
minOccurs="0"로 변경 가능minOccurs="1"필드가 필요한 경우
maxOccurs="unbounded"로 변경 가능maxOccurs="1"하나의 항목만 허용되는 경우
데이터의 유효성을 추가로 검사하려는 경우 고급 xsd-s를 생성할 수 있지만 생성된 c#에서 최소한 합리적인 데이터 유형을 제공합니다.
아래 구문을 사용하여 XSD 파일에서 스키마 클래스를 만듭니다.
C:\xsd C:\Test\test-Schema.xsd /classes /language:cs /out:C:\Test\
조금 전에 이 사이트를 찾았습니다.XML 및 JSON을 C# 및 Java 클래스로 변환합니다.필요에 따라 조정할 수 있는 몇 가지 옵션이 있습니다.저는 그것을 꽤 자주 사용합니다.https://json2csharp.com/xml-to-csharp
XML을 C# 클래스로 변환하는 방법
- Microsoft Visual Studio Marketplace로 이동합니다. -- https://marketplace.visualstudio.com
- 검색 줄에 텍스트를 입력합니다. -- xml to class class code tool
- 앱 다운로드, 설치 및 사용
참고: 시간이 지남에 따라 이 앱은 대체될 수 있지만, 동일한 작업을 수행하는 다른 도구가 있을 가능성이 높습니다.
언급URL : https://stackoverflow.com/questions/4203540/generate-c-sharp-class-from-xml
'programing' 카테고리의 다른 글
| 리소스가 템플릿에 정의되지 않았습니다. (0) | 2023.05.29 |
|---|---|
| 워드 파일을 프로그래밍 방식으로 PDF로 변환하려면 어떻게 해야 합니까? (0) | 2023.05.29 |
| 를 누를 때 UILongPressGestureRecognizer가 두 번 호출됩니다. (0) | 2023.05.29 |
| NLog로 기록된 오류를 이메일로 보내려면 어떻게 해야 합니까? (0) | 2023.05.29 |
| .NET에서 struct와 class의 차이점은 무엇입니까? (0) | 2023.05.29 |