/// <summary> /// Translate an ExpandedCountSelectItem /// </summary> /// <param name="item">the item to Translate</param> /// <returns>Defined by the implementer</returns> public override string Translate(ExpandedCountSelectItem item) { NodeToStringBuilder nodeToStringBuilder = new NodeToStringBuilder(); string currentExpandClause = String.Join("/", item.PathToNavigationProperty.WalkWith(PathSegmentToStringTranslator.Instance).ToArray()); string res = string.Empty; if (item.FilterOption != null) { res += ExpressionConstants.QueryOptionFilter + ExpressionConstants.SymbolEqual + nodeToStringBuilder.TranslateFilterClause(item.FilterOption); } if (item.SearchOption != null) { res += string.IsNullOrEmpty(res) ? null : ";"; res += ExpressionConstants.QueryOptionSearch + ExpressionConstants.SymbolEqual + nodeToStringBuilder.TranslateSearchClause(item.SearchOption); } return(string.Concat(currentExpandClause, ODataConstants.UriSegmentSeparator, UriQueryConstants.CountSegment, string.IsNullOrEmpty(res) ? null : string.Concat(ExpressionConstants.SymbolOpenParen, res, ExpressionConstants.SymbolClosedParen))); }
/// <summary> /// Translate an ExpandedCountSelectItem /// </summary> /// <param name="item">the item to Translate</param> /// <returns>Defined by the implementer</returns> public override string Translate(ExpandedCountSelectItem item) { return(Translate((ExpandedReferenceSelectItem)item)); }