/// <summary> /// エントリーポイント /// WebAPI接続の関係で非同期エントリーポイントとしている /// </summary> /// <param name="args"></param> /// <returns></returns> public static async Task Main(string[] args) { CreateMapping(); TwitterService twitter = new TwitterService(); try { // コマンドライン引数で西暦年が入力されたらその年を使用、入力されなかったら現在の西暦年を使用 int year = args?.Length > 0 && int.TryParse(args[0], out int inputYear) ? inputYear : DateTime.Now.Year ; Mlb.Param mlbParam = new Mlb.Param() { Year = year }; // MLB順位データの受け取り MlbService mlb = new MlbService(); Result mlbResult = await mlb.GetStandingData(mlbParam); // Mlbクラスの戻り値用クラスからTwitterクラスの引数用クラスへMapping Twitter.Param twitterParam = MapToTwitterParam(mlbResult.ResultTeamList); // リーグ・地区ごとに順位をツイート twitter.CreateTweet(twitterParam); } // TODO:例外発生時のログ出力 catch (TwitterException e) { // CoreTweetに関するエラー。 Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.ToString()); // 接続エラー発生時にエラーメッセージをツイート twitter.ExecuteTweet(_tweetedErrorMessage); } }