コード例 #1
0
        public ITree CreateObject(params object[] args)
        {
            IDbDataSource source = ObjectUtil.ConfirmQueryObject <IDbDataSource>(this, args);

            LevelTreeDefinition treeDef = fConfig.TreeDefinition;

            return(CreateTree(SourceScheme, treeDef, source));
        }
コード例 #2
0
 public int GetLevel(LevelTreeDefinition def, string value)
 {
     if (string.IsNullOrEmpty(value))
     {
         return(0);
     }
     return(def.GetLevel(value.TrimEnd('0')));
 }
コード例 #3
0
 public string GetParentId(LevelTreeDefinition def, int level, string value)
 {
     if (level == 0)
     {
         return("#");
     }
     else
     {
         LevelItem item = def.GetLevelItem(level - 1);
         return(value.Substring(0, item.End).PadRight(def.TotalCount, '0'));
     }
 }
コード例 #4
0
 public string GetSqlExceptValue(LevelTreeDefinition def, int level, string value)
 {
     if (level == 0)
     {
         return(string.Empty);
     }
     else
     {
         LevelItem item = def.GetLevelItem(level - 1);
         if (string.IsNullOrEmpty(value))
         {
             value = string.Empty;
         }
         else
         {
             value = value.Substring(0, item.End);
         }
         return(value);
     }
 }
コード例 #5
0
 public string GetSqlExceptValue(LevelTreeDefinition def, int level, string value)
 {
     if (level == 0)
     {
         return(string.Empty);
     }
     else
     {
         LevelItem item = def.GetLevelItem(level - 1);
         if (string.IsNullOrEmpty(value))
         {
             value = string.Empty;
         }
         else
         {
             value = value.Substring(0, item.End);
         }
         //int len = def.TotalCount - item.End;
         return(value.PadRight(def.TotalCount, '0'));
     }
 }
コード例 #6
0
        public string GetSqlLikeValue(LevelTreeDefinition def, int level, string value)
        {
            LevelItem item = def.GetLevelItem(level);

            if (level == 0)
            {
                return(string.Empty.PadRight(item.End, '_').PadRight(def.TotalCount, '0'));
            }
            else
            {
                if (string.IsNullOrEmpty(value))
                {
                    value = string.Empty;
                }
                else
                {
                    value = value.Substring(0, item.Start);
                }
                return(value.PadRight(item.End, '_').PadRight(def.TotalCount, '0'));
            }
        }
コード例 #7
0
 public ClassicLevelSearch(LevelTreeDefinition treeDef, ILevelProvider levelProvider)
 {
     fLevelProvider = levelProvider;
     fTreeDef       = treeDef;
 }
コード例 #8
0
 protected override ITree CreateTree(ITableScheme scheme, LevelTreeDefinition definition,
                                     IDbDataSource source)
 {
     return(new Level0Tree(scheme, definition, source));
 }
コード例 #9
0
 public int GetLevel(LevelTreeDefinition def, string value)
 {
     return(def.GetLevel(value));
 }
コード例 #10
0
 protected abstract ITree CreateTree(ITableScheme scheme, LevelTreeDefinition definition,
                                     IDbDataSource source);