コード例 #1
0
 /// <summary>
 /// Creates CAML membership by with the specified membership type and value.
 /// </summary>
 /// <param name="type">The membership type.</param>
 /// <param name="value">The value.</param>
 /// <returns>
 /// A string representation of the CAML query.
 /// </returns>
 public string Membership(CamlEnums.MembershipType type, string value)
 {
     switch (type)
     {
         case CamlEnums.MembershipType.SPWebAllUsers:
             return Tag(CamlConstants.Membership, CamlConstants.Type, CamlConstants.SPWebAllUsers, value);
         case CamlEnums.MembershipType.SPGroup:
             return Tag(CamlConstants.Membership, CamlConstants.Type, CamlConstants.SPGroup, value);
         case CamlEnums.MembershipType.SPWebGroups:
             return Tag(CamlConstants.Membership, CamlConstants.Type, CamlConstants.SPWebGroups, value);
         case CamlEnums.MembershipType.CurrentUserGroups:
             return Tag(CamlConstants.Membership, CamlConstants.Type, CamlConstants.CurrentUserGroups, value);
         case CamlEnums.MembershipType.SPWebUsers:
             return Tag(CamlConstants.Membership, CamlConstants.Type, CamlConstants.SPWebUsers, value);
         default:
             return Tag(CamlConstants.Membership, CamlConstants.Type, CamlConstants.CurrentUserGroups, value);
     }
 }
コード例 #2
0
        /// <summary>
        /// Creates CAML project property with the specified condition.
        /// </summary>
        /// <param name="propertyName">Name of the property.</param>
        /// <param name="defaultValue">The default value.</param>
        /// <param name="autoHyperlinkType">Type of the automatic hyperlink.</param>
        /// <param name="autoNewLine">if set to <c>true</c> [automatic new line].</param>
        /// <param name="expandXml">if set to <c>true</c> [expand XML].</param>
        /// <param name="htmlEncode">if set to <c>true</c> [HTML encode].</param>
        /// <param name="stripWhiteSpace">if set to <c>true</c> [strip white space].</param>
        /// <param name="urlEncodingType">Type of the URL encoding.</param>
        /// <returns>
        /// A string representation of the CAML query.
        /// </returns>
        public string ProjectProperty(string propertyName, string defaultValue, CamlEnums.AutoHyperlinkType autoHyperlinkType, bool autoNewLine, bool expandXml, bool htmlEncode, bool stripWhiteSpace, CamlEnums.UrlEncodingType urlEncodingType)
        {
            var attributes = new object[]
            {
                CamlConstants.Select,
                propertyName,
                CamlConstants.Default,
                defaultValue,
                (autoHyperlinkType == CamlEnums.AutoHyperlinkType.Plain) ? CamlConstants.AutoHyperLinkNoEncoding : CamlConstants.AutoHyperLink,
                (autoHyperlinkType == CamlEnums.AutoHyperlinkType.None) ? "FALSE" : "TRUE",
                CamlConstants.AutoNewLine,
                autoNewLine ? "TRUE" : "FALSE",
                CamlConstants.HTMLEncode,
                htmlEncode ? "TRUE" : "FALSE",
                CamlConstants.StripWhitespace,
                stripWhiteSpace ? "TRUE" : "FALSE",
                (urlEncodingType == CamlEnums.UrlEncodingType.EncodeAsUrl) ? CamlConstants.UrlEncodeAsUrl : CamlConstants.UrlEncode,
                (urlEncodingType == CamlEnums.UrlEncodingType.None) ? "FALSE" : "TRUE"
            };

            return Tag(CamlConstants.ProjectProperty, null, attributes);
        }
コード例 #3
0
        /// <summary>
        /// Creates CAML lists by with the specified arguments.
        /// </summary>
        /// <param name="baseType">Type of the base.</param>
        /// <param name="listElements">The list elements.</param>
        /// <param name="serverTemplate">The server template.</param>
        /// <param name="includeHiddenLists">if set to <c>true</c> [include hidden lists].</param>
        /// <param name="maxListLimit">The maximum list limit.</param>
        /// <returns>
        /// A string representation of the CAML query.
        /// </returns>
        public string Lists(CamlEnums.BaseType baseType, string listElements, string serverTemplate, bool includeHiddenLists, int maxListLimit)
        {
            var stringBuilder = new StringBuilder();
            stringBuilder.AppendFormat("<Lists BaseType=\"{0}\"", (int)baseType);
            if (!string.IsNullOrEmpty(serverTemplate))
            {
                stringBuilder.AppendFormat(" ServerTemplate=\"{0}\"", serverTemplate);
            }

            stringBuilder.AppendFormat(" Hidden=\"{0}\"", includeHiddenLists ? "TRUE" : "FALSE");
            stringBuilder.AppendFormat(" MaxListLimit=\"{0}\"", maxListLimit);
            stringBuilder.AppendFormat(">{0}</Lists>", listElements);

            return stringBuilder.ToString();
        }
コード例 #4
0
 /// <summary>
 /// Creates CAML membership by with the specified membership type and value.
 /// </summary>
 /// <param name="type">The membership type.</param>
 /// <returns>
 /// A string representation of the CAML query.
 /// </returns>
 public string Membership(CamlEnums.MembershipType type)
 {
     return this.Membership(type, null);
 }
コード例 #5
0
 /// <summary>
 /// Creates CAML lists by with the specified arguments.
 /// </summary>
 /// <param name="baseType">Type of the base.</param>
 /// <param name="listElements">The list elements.</param>
 /// <param name="serverTemplate">The server template.</param>
 /// <param name="includeHiddenLists">if set to <c>true</c> [include hidden lists].</param>
 /// <returns>
 /// A string representation of the CAML query.
 /// </returns>
 public string Lists(CamlEnums.BaseType baseType, string listElements, string serverTemplate, bool includeHiddenLists)
 {
     return this.Lists(baseType, listElements, serverTemplate, includeHiddenLists, 0);
 }
コード例 #6
0
 /// <summary>
 /// Creates CAML lists by with the specified arguments.
 /// </summary>
 /// <param name="baseType">Type of the base.</param>
 /// <param name="listElements">The list elements.</param>
 /// <param name="serverTemplate">The server template.</param>
 /// <returns>
 /// A string representation of the CAML query.
 /// </returns>
 public string Lists(CamlEnums.BaseType baseType, string listElements, string serverTemplate)
 {
     return this.Lists(baseType, listElements, serverTemplate, false, 0);
 }
コード例 #7
0
 /// <summary>
 /// Creates CAML lists by with the specified arguments.
 /// </summary>
 /// <param name="baseType">Type of the base.</param>
 /// <param name="listElements">The list elements.</param>
 /// <returns>
 /// A string representation of the CAML query.
 /// </returns>
 public string Lists(CamlEnums.BaseType baseType, string listElements)
 {
     return this.Lists(baseType, listElements, null, false, 0);
 }
コード例 #8
0
        /// <summary>
        /// Creates CAML field reference with the specified field name.
        /// </summary>
        /// <param name="fieldName">Name of the field.</param>
        /// <param name="sortType">Type of the sort.</param>
        /// <returns>
        /// A string representation of the CAML query.
        /// </returns>
        public string FieldRef(string fieldName, CamlEnums.SortType sortType)
        {
            var attributes = new object[]
            {
                "Ascending",
                (sortType == CamlEnums.SortType.Ascending) ? "TRUE" : "FALSE",
                CamlConstants.Name,
                this.SafeIdentifier(fieldName)
            };

            return Tag(CamlConstants.FieldRef, null, attributes);
        }
コード例 #9
0
 /// <summary>
 /// Creates CAML webs with the specified scope.
 /// </summary>
 /// <param name="scope">The scope.</param>
 /// <returns>
 /// A string representation of the CAML query.
 /// </returns>
 public string Webs(CamlEnums.QueryScope scope)
 {
     return Tag(CamlConstants.Webs, null, CamlConstants.Scope, scope.ToString());
 }