コード例 #1
0
ファイル: SqlLite.cs プロジェクト: egbertn/Peshitta
        public void Muke()
        {
            var key   = new Peshitta.Infrastructure.Models.WordLanguageKey("Piet", 19);
            var hash  = key.GetHashCode();
            var key2  = new Peshitta.Infrastructure.Models.WordLanguageKey("Piet", 90);
            var hash2 = key2.GetHashCode();

            Assert.AreNotEqual(hash, hash2);
        }
コード例 #2
0
ファイル: BijbelRepository.cs プロジェクト: egbertn/Peshitta
        /// <summary>
        ///
        /// </summary>
        /// <param name="textid"></param>
        /// <param name="w">The single word to be converted to a number</param>
        private async Task <words> FindWord(string w, int langId)
        {
            IsCapitalized(w, out bool capitalized, out bool allCaps);
            if (capitalized || allCaps)
            {
                w = w.ToLowerInvariant();
            }
            // numbers can become huge, and thus, waste space!
            bool isNumber = int.TryParse(w, out int number);

            var key = new Models.WordLanguageKey(w, langId);

            var foundWord = await(isNumber ? _context.Words.Where(a => a.number == number && a.LangId == langId) :
                                  _context.Words.Where(h => h.hash == key.GetHashCode())).FirstOrDefaultAsync();

            return(foundWord);
        }