public TableResolver CreateObject(params object[] args)
        {
            IDbDataSource source = ObjectUtil.ConfirmQueryObject <IDbDataSource>(this, args);

            ITableSchemeEx scheme  = Scheme.CreateObject();
            Tk5DataXml     dataXml = scheme as Tk5DataXml;

            if (dataXml == null)
            {
                return new MetaDataTableResolver(scheme, source)
                       {
                           AutoTrackField = AutoTrackField,
                           AutoUpdateKey  = AutoUpdateKey
                       }
            }
            ;
            else
            {
                return new Tk5TableResolver(dataXml, source)
                       {
                           AutoTrackField = AutoTrackField,
                           AutoUpdateKey  = AutoUpdateKey
                       }
            };
        }
    }
示例#2
0
        public static void SetFakeDelete(TableSelector selector, ITableScheme scheme)
        {
            Tk5DataXml dataXml = scheme as Tk5DataXml;

            if (dataXml != null)
            {
                selector.FakeDelete = dataXml.FakeDeleteInfo;
            }
        }
示例#3
0
        public static void AddFakeField(RegNameList <FieldItem> fields, ITableScheme scheme)
        {
            Tk5DataXml dataXml = scheme as Tk5DataXml;

            if (dataXml != null)
            {
                if (dataXml.FakeDeleteInfo != null)
                {
                    fields.Add(new FieldItem(scheme[dataXml.FakeDeleteInfo.FieldName]));
                }
            }
        }
        public TableResolver CreateObject(params object[] args)
        {
            IDbDataSource source = ObjectUtil.ConfirmQueryObject <IDbDataSource>(this, args);

            ITableSchemeEx scheme  = Scheme.CreateObject();
            Tk5DataXml     dataXml = scheme as Tk5DataXml;

            TkDebug.AssertNotNull(dataXml, string.Format(ObjectUtil.SysCulture,
                                                         "模型需要Tk5DataXml,当前的Scheme是{0},不适配", scheme.GetType()), Scheme);
            return(new Tk5TreeTableResolver(dataXml, source)
            {
                AutoTrackField = AutoTrackField,
                AutoUpdateKey = AutoUpdateKey
            });
        }
示例#5
0
 public Tk5TableResolver(string fileName, IDbDataSource source)
     : this(Tk5DataXml.Create(fileName), source)
 {
 }
示例#6
0
        private void SetFakeDeleteInfo()
        {
            Tk5DataXml dataXml = CurrentSchemeEx.Convert <Tk5DataXml>();

            FakeDelete = dataXml.FakeDeleteInfo;
        }
示例#7
0
 public Tk5TableResolver(Tk5DataXml dataXml, IDbDataSource source)
     : base(dataXml, source)
 {
     FakeDelete = dataXml.FakeDeleteInfo;
 }
示例#8
0
 public Tk5TableResolver(string fileName, string tableName, IDbDataSource source)
     : this(Tk5DataXml.Create(fileName, tableName), source)
 {
     SetFakeDeleteInfo();
 }
示例#9
0
 private void SetTreeScheme()
 {
     fTreeScheme = SourceSchemeEx.Convert <Tk5DataXml>();
     TkDebug.AssertNotNull(fTreeScheme.TreeDefinition, "DataXml没有定义tk:Tree", fTreeScheme);
 }
示例#10
0
 public Tk5TreeTableResolver(Tk5DataXml dataXml, IDbDataSource source)
     : base(dataXml, source)
 {
     SetTreeScheme();
 }