예제 #1
0
        /// <inheritdoc />
        public async Task <XElement> GetXmlValueAsync(CancellationToken ct)
        {
            if (_etagEntry != null)
            {
                return(Converter.ToElement(Name, _etagEntry.ETag));
            }

            if (_element == null)
            {
                if (_propertyStore != null)
                {
                    var etag = await _propertyStore.GetETagAsync(_entry, ct).ConfigureAwait(false);

                    _element = Converter.ToElement(Name, etag);
                }
                else
                {
                    _element = new EntityTag(false).ToXml();
                }
            }

            return(_element);
        }