바이두 인터페이스 API : https://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query={date}&resource_id=6018 --date 쿼리에 대한 날짜 (예 : 2019-9)
일부 매개 변수는 인터페이스 클래스를 반환
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
공개 수업 일정 { 공공 INT의 상태는 { 얻을 ; 설정 ; } 공공 목록 <의 CalendarData> 데이터 { 얻을 ; 설정 ; } } 공용 클래스 의 CalendarData { // 공휴일 휴일 {얻을; 세트; } 공공 목록 <홀리데이> 휴일 { 얻을 ; 설정 ; } } 공용 클래스 휴일 { 공공 문자열 내림차순 { 얻을 ; 설정 ; } 공공 문자열 축제 { 얻을 ; 설정 ; } 공공 목록 <HolidayList> 목록을 { 얻을 ; 설정 ; } 공공 문자열 이름 { 얻을 ; 설정 ; } 공공 문자열 나머지 { 얻을 ; 설정 ; } } 공용 클래스 HolidayList { 공공 문자열 날짜 { 얻을 ; 설정 ; } /// <요약> /// 1休息2上班 /// </ 요약> 공공의 INT의 상태 { 얻을 ; 설정 ; } 공공 문자열 발언 { 얻을 { 반환 상태 == 1 ? " 休假" : " 上班" ; } } } 공용 클래스 CALENDAR2 { 공공 INT의 상태 { 얻을 ; 설정 ; } 공공 목록 <CalendarData2> 데이터 { 얻을 ; 세트; } } 공용 클래스 CalendarData2 { 공공 휴일 휴가 { 얻을 ; 설정 ; } }
휴일을 가져옵니다
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
개인 정적 무효 GetHoliday ( 문자열 날짜) { 웹 클라이언트 클라이언트 = 새로운 웹 클라이언트 (); client.Encoding = Encoding.UTF8; var에 URL = $ " https://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query={date}&resource_id=6018 " ; var에 jsondata = client.DownloadString (URL); 시도 { var에 모델 = JsonConvert.DeserializeObject <캘린더> (jsondata); foreach는 ( var에 항목에서 ) model.data { foreach는 ( var에 휴가 에 item.holiday) { foreach는 ( var에 하루 에 holiday.list) { Console.WriteLine ($ " 日期: {day.date}, {day.remark} " ); } } } } 캐치 (예외) { VAR의 모델 = JsonConvert.DeserializeObject <CALENDAR2> (jsondata); 각각( VAR의 항목 에서 model.data) { 경우 (item.holiday =! 널 (null) && item.holiday.list! = null이 ) { foreach는 ( var에 하루 에 item.holiday.list) { Console.WriteLine ($ " 日期: {일 .date}, {day.remark} " ); } } } } // 하는 jobject하는 jobject = JObject.Parse JSON (); //VAR 휴일하는 jobject = [ "데이터"] [0] [ "휴가"]; // 경우 (휴가! = NULL && holiday.Children (). 카운트 ()> 0) // { // foreach는 (holiday.Children ()에서 동적 항목을 선택합니다. ToList ()) // { // foreach는 (동적 일 item.list에서) // { // 문자열 발언 = day.status == 1? "休假": "上班"; // Console.WriteLine ($ "日期: {day.date}, {말}"); // } // } // } }
참고 : 인터페이스에 의해 반환 된 매개 변수 중 일부는 반드시 모든 휴가를 수집하지 않습니다
데모 코드를 다운로드 : 데모