public AutomatedDataHandlerBase(ITableCentricConfigurable profileBuilder)
 {
     this.profileBuilder  = profileBuilder;
     this.Table           = new DataTable();
     this.DataObjectStore = new DataObjectStore(this.profileBuilder.BuildDataObjectProfile());
     this.CreateColumn(this.table);
 }
        internal static ITableCentricConfigurable BuildProfile(Assembly resourceContainedAssembly, string resourceName)
        {
            string name = resourceName + ".xaml";
            ITableCentricConfigurable tableCentricConfigurable = null;
            Stopwatch stopwatch = new Stopwatch();

            ExTraceGlobals.DataFlowTracer.TracePerformance((long)Thread.CurrentThread.ManagedThreadId, "Start to parse the schema " + resourceName);
            stopwatch.Start();
            if (tableCentricConfigurable == null)
            {
                Stream manifestResourceStream = resourceContainedAssembly.GetManifestResourceStream(name);
                tableCentricConfigurable = (XamlReader.Load(manifestResourceStream) as ITableCentricConfigurable);
            }
            stopwatch.Stop();
            ExTraceGlobals.DataFlowTracer.TracePerformance <string, long>((long)Thread.CurrentThread.ManagedThreadId, "End to parse the schema {0} and it costs {1} ms.", resourceName, stopwatch.ElapsedMilliseconds);
            return(tableCentricConfigurable);
        }