제목에 C#을 언급했지만 일반적인 프로그래밍 질문입니다. 내가C#
ID : 1
ProjectName : "Test"
City : "NY"
Size : 100
Location : "USA"
가 지금은 타사 응용 프로그램 그러나 나는 응용 프로그램에 대한 해당 테이블을 직렬화하는 데 필요한 다음 필드가 포함 TABLEA가
: 난 그냥 다음을 수행하는 가장 좋은 방법을 찾기 위해 찾고 있어요 일반 데이터 계약 (아래 참조)을 사용하며 필드 이름을 약간 수정해야합니다. 다음과 같이 따라서 위의 표는 직렬화 할 것이다 :
ProjectName -> NameofProject
City -> ProjectCity
Location ->ProjectLocation
이 내가 달성 할 방법입니다 당신은 내가 새로운 필드 이름/키에 TableA의에서 필드를 매핑하는 데 필요한 볼 수 있듯이
<Object>
<type>Project</type>
<Fields>
<Key>NameofProject</Key><Value>Test</value>
<Key>ProjectCity</Key><Value>NY</value>
<Key>ProjectLocation</Key><Value>USA</value>
</Fields>
</Object>
위 : -
InputField -> OutputKey
ProjectName -> NameofProject
City -> ProjectCity
Location ->ProjectLocation
I would then load the data from this table into a Set
I would then loop through each row of the input
- for each column in the row I would get the OutputKey based on the InputField as stored in my mapping Set, and build the xml
나는 세트에서 정보의 소량을 저장 한 후 보라를하고 맡기 상기 한 바와 같이 매핑 관계를 저장하는 매핑 테이블 만들기 각 분야에 대한 okups 너무 나쁘지 않을거야. 하지만 나는 경험이 많은 C# 사용자가 아니기 때문에 C#에서이 작업을 수행하는 더 좋은 방법이 있는지 궁금해하고 있습니다. 도움이나 지침을 주시면 감사하겠습니다.
EDIT : XSLT를 사용하여 제안한 의견은 좋은 생각이지만이 작업의 다른 복잡성 때문에 데이터 계약을 기반으로 XML 코드를 작성하는 것이 좋습니다. 입력 데이터 테이블과 매핑 테이블의 SQL 조인을 통해 매핑을 수행 할 수있는 방법이 있습니까?
내장 된 XSL serializer를 사용하여 적절한 XSLT를 사용하고 출력에 serialize 된 입력을 변환하면이 XSLT는 구성 파일이나 db의 테이블에서 얻을 수 있으므로 코드 재 컴파일없이 동적으로 변경할 수 있습니다. – Saravanan
재미있는 생각처럼 들리네. XSLT를 사용하여 이전에 많은 작업을 해본 적이 없지만이를 수행하는 방법은 알지만 매핑 테이블에 대한 조인을 통해 테이블을 쿼리 할 때 필드 이름에 매핑을 수행 할 방법이 없습니까? – Gotts
또한 - 응용 프로그램에서 공유하는 데이터 계약을 사용해야하므로 XSLT를 통해 매핑하는 것이 이상적이지 않습니다. 그리고 다른 이유로 복잡한 것을 만들려고합니다 – Gotts