コード例 #1
0
        public static FindEqualityJoinVisitor Run(string sql)
        {
            var aliasFinder = new AliasResolutionVisitor();
            RunTSqlFragmentVisitor.AnalyzeFragmentVisitor(sql, sql.ComputeHash(), aliasFinder);

            var visitor = new FindEqualityJoinVisitor(aliasFinder.Aliases);
            RunTSqlFragmentVisitor.AnalyzeFragmentVisitorBase(sql, sql.ComputeHash(), visitor);
            return visitor;
        }
コード例 #2
0
        public static FindEqualityJoinVisitor Run(string sql)
        {
            var aliasFinder = new AliasResolutionVisitor();

            RunTSqlFragmentVisitor.AnalyzeFragmentVisitor(sql, sql.ComputeHash(), aliasFinder);

            var visitor = new FindEqualityJoinVisitor(aliasFinder.Aliases);

            RunTSqlFragmentVisitor.AnalyzeFragmentVisitorBase(sql, sql.ComputeHash(), visitor);
            return(visitor);
        }
コード例 #3
0
ファイル: MainViewModel.cs プロジェクト: yao-yi/DNTProfiler
 private void Commands_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
 {
     switch (e.Action)
     {
         case NotifyCollectionChangedAction.Add:
             foreach (Command command in e.NewItems)
             {
                 var localCommand = command;
                 _callbacksManager.RunAnalysisVisitorOnCommand(() =>
                 {
                     var aliasFinder = new AliasResolutionVisitor();
                     RunTSqlFragmentVisitor.AnalyzeFragmentVisitor(localCommand.Sql, localCommand.SqlHash, aliasFinder);
                     var visitor = new FindEqualityJoinVisitor(aliasFinder.Aliases);
                     return RunTSqlFragmentVisitor.AnalyzeFragmentVisitorBase(localCommand.Sql, localCommand.SqlHash, visitor);
                 }, command);
             }
             break;
     }
 }