コード例 #1
0
        public static SqlBuilder WithMetadata(this SqlBuilder builder, bool UseCache = true, string FileName = null)
        {
            SqlMetadataDatabase db = SqlMetadataDatabase.FromBuilder(builder, UseCache, FileName);

            builder.Metadata = db.BuildMetadata();
            return(builder);
        }
コード例 #2
0
        public void GenerateMetadataTwoTimesUsingCaching()
        {
            Guid       g  = StopWatch.Start();
            SqlBuilder b1 = SqlBuilder.Select().WithMetadata();

            Console.WriteLine(StopWatch.Stop(g, StopWatch.WatchTypes.Seconds, "Metadata Pass 1/2: Metadata serialized to cache and SqlBuilder ready in {0}s"));
            g = StopWatch.Start();
            SqlBuilder b2 = SqlBuilder.Select().WithMetadata();

            Console.WriteLine(StopWatch.Stop(g, StopWatch.WatchTypes.Milliseconds, "Metadata Pass 2/2: Metadata serialized from cache and SqlBuilder ready in {0}ms"));
            Console.WriteLine("Removing Metadata from cache");
            bool b = SqlMetadataDatabase.FromBuilder(b2).ClearMetadata();

            Assert.IsTrue(b1.Metadata != null);
            Assert.IsTrue(b2.Metadata != null);
            Assert.IsTrue(b);
        }