LINQ to XML 정보통신 공학부 2003730080 어현승.

Slides:



Advertisements
Similar presentations
6조6조 김지혜 이지현 황지만 저널리즘 위기의 실체와 극복. 목차 『한국언론정보학보 』 2006 년 겨울, 통권 36 호, 한국언론정보학회 저널리즘 위기의 실체와 극복방안에 관한 연구 문제제기 : 미디어 폭발시대의 저널리즘 위기 1 저널리즘 위기의 선행연구와 연구방법.
Advertisements

경영학과 이은지 경영학과 윤혜리 경영학과 이지은 경영학과 유승연 경영 성공사례 분석.
윤준혁 (12), 이주연 (13), 박혜원 (14), 안혜경 (15) 허니버터칩으로 알아본 SNS 의 영향 력.
지도교수 : 박진식 교수님 조 원 : 홍승기, 이병용, 백승준, 조근용, 조동현, 한정협, 이상하.
폭력. 폭력이란 무엇인가 우상의 눈물 물리적인 폭력 ( 최기표 ) VS 지능적인 폭력 ( 임형우, 담임선생님 )
1 ‘ 우리나라의 주요공업 ’ - 정도웅, 주민혁, 안수진, 백경민, 엄다운, 박경찬 -.
김 해 시김 해 시 김해시 헬스 3.3 핵심사업 120/80 고혈압 당뇨 중점관리 지역주민의 기대수명을 저해하는 3 대 사망원인 (1 위 암, 2 위 뇌혈관질환, 3 위 심장질환 ) 중 뇌혈관 질환을 제거하기 위하여 지역주민을 대상으로 고 혈압 당뇨병의 조기발견 및.
수유부의 약물복용 시 주의점 발표자 조기성. 모유 수유의 장점 모유 수유의 장점은 ? 위장관 질환 발생감소 영아 돌연사 발생감소 아토피 질환 발생감소 정서적 안정.
일본주식시장의 신 고레가와긴조 투자전략 6 조 안승권. 신문수 발표자 : 신 문 수. 출 생 : 1897 효고현에서 출생 학 력 : 초등학교졸업, 사업가 1992 년 95 세 사망 유일한 자서전 1981 년 스미토모 금속광산 주식매매 200 억엔 벌다⇒ 일본 소득세 납세.
언어의 자서전 소단원 (1) 단원. 언어의 특성 기호성 자의성 사회성 규칙성 창조성 역사성.
똘기 : 채 익지 않은 과일. 똘기 소개 일명 발표동아리. 똘기는 발표에 대한 두려움을 가지고 있는 학우들에게 ‘ 자신감 ’ 을 키워줄 수 있도록 하자는 취지에서 만들어졌다. 평소 강의 시간보다 편안하고 자유롭게 발표해 볼 수 있는 기회를 제공함으로써 발표력 향상에 기여하는.
1 박 2 일 !!! 인천마장초등학교 유수아. 1 박 2 일 멤버 인기순 위 1 위 이승기 2 위 엄태웅 3 위 은지원 4 위 김종민, 이수근 ※인터넷에서 본것이기 때문에 사람에따라 서 다를 수 있다. ※
2013년도 2학기 학습튜터링 O.T.
■ 지도교사 : 박정희 광덕고등학교 동아리 –어벤져스-
미국의 미디어교육 신문방송학과 강진구 한인수 곽모란 이명현.
2009개정 중등 국어과 교육과정 울산광역시교육청 교육과정 컨설팅단 : 정일진.
반송지역 스토리 텔링 호텔경영학과 권정민.
XML.
달라지는 노동법 개정 내용 노무법인 正道 잠시나마… 주요 노동관계법 개정내용 3. 마무리 Contents
PRESENTATION 저온화상이란?
초고층 건축물 화재진압 전술 연구 합천소방서 발표자 : 예방대응과장 정 철.
공부할 내용 조상들이 살던 곳 자연과 잘 어울리는 한옥 지방에 따라 서로 다른 집의 모양 섬 지방의 집
2011년 봄학기 정보컴퓨터공학부 컴퓨터 소프트웨어 설계 및 실험
사랑, 데이트와 성적 자율성 :데이트 성폭력!!! 성폭력예방교육 전문강사 / 여성학 전공 신 순 옥.
Kim Yang Ki 돈,뜨겁게 사랑하고 차갑게 다루어라 Kim Yang Ki
퇴계와 율곡의 사회사상 비교 남 일 재 동서대학교 교수/ 정치학 박사 1. 퇴계 이황과 율곡 이이의 약전(略傳)
제3장 사회 복지 발달사.
문헌정보학과, 사서만 있는 줄 아니? 10. Mushroom
청소년문제와 보호 청소년문제의 개념과 범주.
501. 군인들의 세상 502. 민정 이양과 한일회담 이선용.
쌓지 말고 해소하자 이 주휘 이 진영 전 민석 전 혜림.
2015년 하반기 소방교육 자 유 전 공 학 부 (금) 안녕하십니까 자유전공학부 행정실 입니다.
Visual Studio 2008 버전별비교 및 제품개요
아동복지 제9장.
서울 메트로 노조파업 수강과목 : 노사 관계론 담당교수 : 정형진 교수님
XML XSLT.
기본간호학 - 주영주교수님 성인초기 및 중년기 조원 : 최연옥 최윤정
작업장에서 불의의사고로 절단사고가 발생했다면
XML.NET XML 검색, 수정 프로그램 작성 2010 컴퓨터공학실험(Ⅰ)
제13장 장애인 복지.
멸종위기종 복원사업 파워포인트의 무한한 가능성 동물생명자원과학과 임다혁.
Ⅰ. 가족복지 개관 가족복지론 최진령.
정치학원론 5주차 제 4장 정치체계론 행정학과 구경완, 김정은, 박하륜, 양민지, 이환규.
패시브하우스 신안산대학교 l 건축과 l 박효동, 박창준, 지예림.
정치개혁의 가능성 논의 권력구조 개편을 통하여 본 -개헌을 통한 정부형태의 변화를 중심으로 [한국정치론] 윤성이 교수님
최아람 by 일석이조 빅데이터를 활용해보자!.
서울시 R&D 연구회 2차 모임 산학협력 기술지주회사.
커 GO 비 의 to 홈 게임공학과 박혜원.
치료 레크레이션 프로그램 (지적 장애 대상) 과 목: 학 과: 학 번: 이 름: 제 출 일 자 담 당 교 수:
광고 모델의 영향력.
3조 권기태 윤주영 은화령 이형찬 이송민 김동욱 한승묵
노년기 발달 장안대 행정법률과 세류반 정 오 손
태국 문학 욜라다 왓짜니 싸란차나 팟차라와라이 끼따야펀 르앙다우 타니다.
CONTENTS Ⅰ. 대회목적 Ⅱ. 대회개요 Ⅲ. 대회요강 Ⅳ. 대회규정 Ⅴ. 운영계획 Ⅵ. 홍보계획 Ⅶ. 예산계획.
(생각열기) 횡파와 종파를 구분하는 기준은 무엇인가?? 답 : 진동하는 방법의 차이
쌍용자동차의 사례를 통해 본 바람직한 노사관계란?
김종철 (변호사, 서울공익법센터 어필) 국내 난민 판결 10년 김종철 (변호사, 서울공익법센터 어필)
평생 저축해도 강남 아파트 못산다 학 과 : 회계학과 1학년 B반 과 목 : 회계학원론 담당교수: 박성환 교수님
도덕과 교수-학습 모형 초등특수교육과 나성령.
(Ⅰ) 독서와 언어의 본질 언어의 본질 1 2 [고등 국어] – 독서와 문법 독서의 본질 (1) 독서의 특성
정신보건 사회복지 제17장.
경영학의 상황학파에 대해서… 경제학과 3학년 최준용 회계학과 4학년 진현빈
워밍업 실뭉치 전달게임.
유통경영학과 하성훈 유통경영학과 김병율 기계공학과 배용진
음파성명학 최종욱.
CODING SOFTWARE CREATIVE EDUCATION CENTER
2009개정 중등 국어과 교육과정.
“사업주 부정수급 Clean Up 캠페인”.
두손Order 푸드팩토리 두손Order Ver 1.0 ㈜시소이드.
제16장 의료 사회복지.
Presentation transcript:

LINQ to XML 정보통신 공학부 2003730080 어현승

Contents 1. LINQ? 2.LINQtoXML 3.Methods 4. Coding

LinQ LINQ(.NET Language Integrated Query) 프로젝트는 데이터 소스 뿐만 아니라 개발을 위한 데이터 접근을 표준화하려는 MS의 이니셔티브이다. LINQ의 장점 1.관계형 데이터베이스 테이블 뿐만 아니라 텍스트 파일, XML 파일, 그리고 동일한 구문을 사용하는 데이터 소스에 질의를 할 수 있다. 2.C#, VB.NET 등 임의의 .NET 호환 언어로 이 표준화된 방식을 사용할 수 있다는 점이다. Object,Dataset,SQL, Entities, XML 에 대하여 지원하며 object, RDB,XML 이 3가지에 대해 컨트롤이 가능하다.

LINQ to XML LINQ to XML은 LINQ를 사용할 수 있는 메모리 내 XML 프로그래밍 인터페이스로, .NET Framework 프로그래밍 언어에서 XML 작업을 수행할 수 있도록 합니다. LINQ to XML의 가장 큰 이점 XML 트리를 쉽게 만들 수 있습니다. XML 문서에 대한 쿼리를 작성하여 요소와 특성에 대해서 검색이 가능합니다. XElement 및 XAttribute 개체 생성자에 대한 매개 변수로 사용할 수 있습니다. ‘함수 생성’ 이란 방법을 통해 XML의 트리 구조를 변경 할 수 있습니다.

Query 문 데이터 소스 및 범위변수 지정한 키에 따라 결과를 그룹화 필터링 할 조건(해당 조건이 참인 요소를 가지고 온다, &&,|| 연산자를 사용 가능) 값을 정렬 하기 위한 기준 결과값을 가지고 온다.

LINQ-XML VS DOM DOM 방식은 XML 트리의 구조에 대한 많은 정보를 시각적으로 제공하지 않습니다.

LINQ to XML Query 사용법 항목 설명 방법: 특정 특성을 가진 요소 찾기 특정 값을 가진 특성이 포함된 특정 요소를 찾는 방법을 보여 줍니다. 방법: 특정 자식 요소를 가진 요소 찾기 특정 값을 가진 자식 요소가 포함된 특정 요소를 찾는 방법을 보여 줍니다. XDocument 쿼리와 XElement 쿼리 비교 XElement에서 시작하는 XML 트리에 대한 쿼리 작성과 XDocument에서 시작하는 XML 트리에 대한 쿼리 작성의 차이점에 대해 설명합니다. 방법: 특정 요소 이름을 가진 하위 요소 찾기 특정 이름을 가진 요소의 하위 요소를 모두 찾는 방법을 보여 줍니다. 이 예제에서는 Descendants 축을 사용합니다. 방법: Descendants 메서드를 사용하여 단일 하위 요소 찾기 Descendants 축 메서드를 사용하여 고유하게 명명된 단일 요소를 찾는 방법을 보여 줍니다. 방법: 복잡한 필터링을 사용하여 쿼리 작성 더욱 복잡한 필터를 사용하여 쿼리를 작성하는 방법을 보여 줍니다. 방법: 선택적 요소를 기준으로 필터링 불규칙적인 모양의 트리에서 노드를 찾는 방법을 보여 줍니다. 방법: 네임스페이스에서 모든 노드 찾기 특정 네임스페이스에 있는 노드를 모두 찾는 방법을 보여 줍니다. 방법: 요소 정렬 결과를 정렬하는 쿼리를 작성하는 방법을 보여 줍니다. 방법: 여러 키에 대해 요소 정렬 여러 키에 대해 정렬하는 방법을 보여 줍니다. 방법: 중간 값 계산 Let 절을 사용하여 LINQ to XML 쿼리에서 중간 값을 계산하는 방법을 보여 줍니다. 방법: 컨텍스트에 따라 요소를 찾는 쿼리 작성 트리의 다른 요소를 기반으로 요소를 선택하는 방법을 보여 줍니다. 방법: 빈 쿼리 결과 집합 디버깅 기본 네임스페이스에 있는 XML에 대한 쿼리를 디버깅할 때 적절한 해결 방법을 보여 줍니다.

XML Tree에 추가 하기(생성자를 통한 추가)

함수에 Element 추가하기(Add함수)

함수에 Element 삭제하기 메소드 설명 [M:System.Xml.Linq.XAttribute.Remove()] [M:System.Xml.Linq.XContainer.RemoveNodes()] XContainer에서 자식 노드를 제거합니다. XElement..::.RemoveAll XElement에서 내용과 특성을 제거합니다. XElement..::.RemoveAttributes XElement의 특성을 제거합니다. XElement..::.SetAttributeValue 값으로 null을 전달하면 특성을 제거합니다. XElement..::.SetElementValue 값으로 null을 전달하면 자식 요소를 제거합니다. XNode..::.Remove 부모에서 XNode를 제거합니다. Extensions..::.Remove 부모 요소에서 소스 컬렉션의 모든 특성이나 요소를 제거합니다.

함수에 Element 수정하기 메소드 설명 XElement..::.Parse 요소를 구문 분석된 XML로 바꿉니다. XElement..::.RemoveAll 요소의 모든 내용(자식 노드와 특성)을 제거합니다. XElement..::.RemoveAttributes 요소의 특성을 제거합니다. XElement..::.ReplaceAll 요소의 모든 내용(자식 노드와 특성)을 바꿉니다. XElement..::.ReplaceAttributes 요소의 특성을 바꿉니다. XElement..::.SetAttributeValue 특성의 값을 설정합니다. 특성이 없으면 특성을 만듭니다. 값이 null로 설정되어 있으면 특성을 제거합니다. XElement..::.SetElementValue 자식 요소의 값을 설정합니다. 요소가 없으면 요소를 만듭니다. 값이 null로 설정되어 있으면 요소를 제거합니다. XElement..::.Value 요소의 내용(자식 노드)을 지정된 텍스트로 바꿉니다. XElement..::.SetValue 요소의 값을 설정합니다. XAttribute..::.Value 특성의 값을 설정합니다. XAttribute..::.SetValue XNode..::.ReplaceWith 노드를 새 내용으로 바꿉니다. XContainer..::.ReplaceNodes 자식 노드를 새 내용으로 바꿉니다.

XML 파일 불러오기 /저장하기 XML 파일 불러오기(XML 트리로 바로 불러오기) XML 파일 불러오기2(XMLReader) XElement 변수명 = XElement.Load(파일의 경로); XML 파일 불러오기2(XMLReader) XmlReader 불러들일 변수명 = XmlReader.Create(읽을 파일명"); while (불러들일 변수명.NodeType != XmlNodeType.Element) r.Read(); XElement e = XElement.Load(r); XML 파일로 저장 하기 ….. e.Save(저장파일명);

NameSpace의 범위 트리에 나타나는 기본 네임스페이스는 쿼리에 범위에 포함되지 않습니다. 그렇기 때문에 기본 네임스페이스에 있는 XML을 사용하는 경우 XNamespace 변수를 선언하고 로컬 이름과 결합하여 쿼리에서 사용할 정규화된 이름을 만들어야 합니다. XML 트리를 쿼리할 때 가장 일반적인 문제 중 하나는 XML 트리에 기본 네임스페이스가 있는데도 개발자가 경우에 따라 XML이 네임스페이스에 없는 것처럼 쿼리를 작성는 것입니다.

NameSpace 잘못된 사용 예제

NameSpace 잘못된 사용의 해결책

Xml Tree에서 트리모양 변환

Xml Tree에서 트리모양 변환

Xml Tree 를 다른 형태로 변환 메소드 설명 방법: LINQ to XML을 사용하여 사전 작업 사전을 XML로 변환하는 방법과 XML을 사전으로 변환하는 방법을 보여 줍니다. 방법: XML 트리의 모양 변환 XML 문서의 모양을 변환하는 방법을 보여 줍니다. 방법: 프로젝션 형식 제어 LINQ to XML 쿼리의 형식을 제어하는 방법을 보여 줍니다. 방법: 새 형식 프로젝션(LINQ to XML) LINQ to XML 쿼리에서 사용자 정의 형식의 컬렉션을 프로젝션하는 방법을 보여 줍니다. 방법: 개체 그래프 프로젝션 LINQ to XML 쿼리에서 더 복잡한 개체 그래프를 프로젝션하는 방법을 보여 줍니다. 방법: 익명 형식 프로젝션 LINQ to XML 쿼리에서 익명 개체의 컬렉션을 프로젝션하는 방법을 보여 줍니다. 방법: XML에서 텍스트 파일 생성 XML 파일을 XML이 아닌 텍스트 파일로 변환하는 방법을 보여 줍니다. 방법: CSV 파일에서 XML 생성 LINQ를 사용하여 CSV 파일의 구문을 분석하고 이 파일에서 XML을 생성하는 방법을 보여 줍니다.

XML Tree를 이용한 고급기법 항목 설명 기본 쿼리(LINQ to XML) XML 트리에서 프로젝션하고 XML 트리를 변환하는 일반적인 예제를 제공합니다. 고급 쿼리 기법(LINQ to XML) 고급 시나리오에 유용한 쿼리 기법을 제공합니다. XPath 사용자에 대한 LINQ to XML 다양한 XPath 식과 각 XPath 식에 해당하는 동일한 LINQ to XML 항목을 제공합니다. XML의 순수 함수 변환 함수형 프로그래밍의 스타일로 쿼리를 작성하는 방법에 대한 간단한 자습서를 제공합니다.

Reference 1. MSDN 2.www.ehclub.net

Thank You