コード例 #1
0
        private static void Main(string[] args)
        {
            //Calls Luis and create Luis Object
            LuisJsonModel luisJson = Utitlities.CallLuis();

            //Returns SPARQL Query using the Luis object
            string sparqlQuery = Utitlities.ExtractLuisData(luisJson);

            Console.WriteLine(sparqlQuery);

            Console.ReadLine();
        }
コード例 #2
0
        public static string ExtractLuisData(LuisJsonModel luisJson)
        {
            int    numberOfItems = 0;
            string genre         = String.Empty;
            int    year          = 0;
            string exactDate     = String.Empty;

            foreach (var i in luisJson.Entities)
            {
                switch (i.Type)
                {
                case "builtin.number":
                    if (int.TryParse(i.Resolution.Value, out int number))
                    {
                        if (number < 1000)
                        {
                            numberOfItems = number;
                        }
                    }
                    break;

                case "genre":
                    genre = i.entity;
                    break;

                case "builtin.datetime.date":
                    if (DateTime.TryParse(i.entity, out DateTime exactDateTime))
                    {
                        exactDate = exactDateTime.ToString();
                    }
                    else if (int.TryParse(i.entity, out int yearDateTime) && (i.entity.Length == 4))
                    {
                        year = yearDateTime;
                    }
                    break;
                }
            }
            return(CreateSparqlQuery(numberOfItems, genre, year, exactDate));
        }