0

リポジトリ内のファイル数を取得するにはどうすればよいですか? リポジトリのツリーを取得するために、この C# コードを試しました。

private TreeNode GetRepoTreeNodes(string currentrepourl, string currentnodepath, ref SvnClient sc)
        {
            List<TreeNode> tnkids = new List<TreeNode>();

            //using (SvnClient sc = new SvnClient())
            //{
                Collection<SvnLis​tEventArgs> repocontents = null;
                if (sc.GetList(new Uri(currentrepourl), out repocontents))
                {
                    foreach (SvnListEventArgs kiditem in repocontents)
                    {
                        if (!string.IsNullOrEmp​ty(kiditem.Path))
                        {
                            TreeNode tn = GetRepoTreeNodes(currentrepourl + @"/" + kiditem.Path, kiditem.Path, ref sc);
                            // TreeNode tn = new TreeNode(kiditem.Path, tnkids.ToArray());
                            tnkids.Add(tn);
                        }
                    }
                }
            //}

            TreeNode thenode = new TreeNode(currentnodepath, tnkids.ToArray());
            return thenode;
        }

問題は、ループの最後に到達しても、ファイルをディレクトリとして扱い、例外をスローすることです。私は解決策を見つけることができませんでした。この目的を達成する他の方法がある場合は、それを手伝ってください。ありがとうございました

4

1 に答える 1

0

GetList()次の 2 つの回答を確認してください。目的を達成するために使用する方法について、良いアイデアが得られるはずです。

于 2013-05-22T13:35:38.503 に答える