■ Categories 클래스의 GetAllAsync 메소드를 사용해 전체 카테고리를 구하는 방법을 보여준다.
▶ Program.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
using WordPressPCL; using WordPressPCL.Models; namespace TestProject; /// <summary> /// 프로그램 /// </summary> class Program { //////////////////////////////////////////////////////////////////////////////////////////////////// Method ////////////////////////////////////////////////////////////////////////////////////////// Static //////////////////////////////////////////////////////////////////////////////// Private #region 프로그램 시작하기 - Main() /// <summary> /// 프로그램 시작하기 /// </summary> /// <returns>태스크</returns> private async static Task Main() { string baseURL = "https://somebody_wordpress.com/wp-json/"; string userID = "사용자ID"; string applicationPassword = "애플리케이션 패스워드"; WordPressClient client = new WordPressClient(baseURL); client.Auth.UseBasicAuth(userID, applicationPassword); IEnumerable<Category> categoryEnumerable = await client.Categories.GetAllAsync(useAuth : true); Dictionary<int, CategoryKeyModel> categoryKeyDictionary = new Dictionary<int, CategoryKeyModel>(); foreach(Category category in categoryEnumerable.OrderBy(category => category.Parent * 10000 + category.Id)) { if(category.Parent == 0) { CategoryKeyModel categoryKey = new CategoryKeyModel(); categoryKey.KEY = category.Name.ToUpper().Trim(); categoryKey.PARENT_KEY = null; categoryKey.CATEGORY = category; categoryKeyDictionary.Add(category.Id, categoryKey); } else { CategoryKeyModel parentCategoryKey = categoryKeyDictionary[category.Parent]; CategoryKeyModel categoryKey = new CategoryKeyModel(); categoryKey.KEY = $"{parentCategoryKey.KEY}/{category.Name.ToUpper().Trim()}"; categoryKey.PARENT_KEY = parentCategoryKey.KEY; categoryKey.CATEGORY = category; categoryKeyDictionary.Add(category.Id, categoryKey); } } foreach(KeyValuePair<int, CategoryKeyModel> keyValuePair in categoryKeyDictionary) { CategoryKeyModel categoryKey = keyValuePair.Value; Console.WriteLine($"{categoryKey.KEY}, {categoryKey.CATEGORY.Name}"); } } #endregion } |