public IHttpActionResult GetSentiment(string keyword, DateTime?startDate = null, DateTime?endDate = null, string period = "d")
        {
            TimeSpan groupingInterval;

            switch (period)
            {
            case "d":
                groupingInterval = TimeSpan.FromDays(1);
                break;

            case "w":
                groupingInterval = TimeSpan.FromDays(7);
                break;

            case "m":
                groupingInterval = TimeSpan.FromDays(30);
                break;

            case "y":
                groupingInterval = TimeSpan.FromDays(365);
                break;

            default:
                return(Ok("Invalid period (must be 'd', 'w', 'm', or 'y')"));
            }

            startDate = startDate ?? DateTime.MinValue;
            endDate   = endDate ?? DateTime.Now;

            var sentiment = _SentimentRepo.GetSentimentByKeyword(keyword, groupingInterval, startDate.Value, endDate.Value);

            return(Ok(sentiment));
        }
Пример #2
0
        public IHttpActionResult GetSentiment(string keyword, DateTime?startDate = null, DateTime?endDate = null, string period = "d")
        {
            var groupingInterval = Common.TimeLibrary.StringToTimeInterval(period);

            startDate = startDate ?? DateTime.MinValue;
            endDate   = endDate ?? DateTime.Now.ToUniversalTime();

            var sentiment = _SentimentRepo.GetSentimentByKeyword(keyword, groupingInterval, startDate.Value, endDate.Value);

            return(Ok(sentiment));
        }