コード例 #1
0
        protected virtual async Task <bool> AppendVirtualPath(
            StringBuilder virtualPathBuilder,
            Guid documentId,
            CultureInfo language)
        {
            var document = await _sanityClient.Get <ISanityDocument>(documentId, language);

            if (document == null || !document.Slug.ContainsKey(language.TwoLetterISOLanguageName))
            {
                return(false);
            }

            var slug      = document.Slug[language.TwoLetterISOLanguageName];
            var parentRef = document.Parent;

            virtualPathBuilder.Insert(0, $"{slug}/");

            if (parentRef != null)
            {
                return(await AppendVirtualPath(virtualPathBuilder, parentRef.Id, language));
            }

            return(true);
        }
コード例 #2
0
 public async Task <T> Get <T>(Guid documentId, CultureInfo language) where T : ISanityDocument
 {
     return(await _cacheHandler.GetCachedOrLoad(documentId, language, () => _inner.Get <T>(documentId, language)));
 }