Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I am trying to build a simple repository browser into a web application and have been looking into using SharpSvn to help.

I can find all the usual physical commands, like update, commit, that would actually make changes to the repository or a working copy but am struggling to find a way to query a repositories structure or contents.

Is there any way I can read the structure of the repository so I can display a simple explorer like interface in a web page (i.e. tree view of directories plus a list of files)?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
407 views
Welcome To Ask or Share your Answers For Others

1 Answer

The SharpSvn.SvnClient class has a GetList() function that works really well:

using (SvnClient svnClient = new SvnClient())
{
   Collection<SvnListEventArgs> contents;
   List<string> files = new List<string>();
   if (svnClient.GetList(new Uri(svnUrl), out contents))
   {
      foreach(SvnListEventArgs item in contents)
      {
         files.Add(item.Path);
      }
   }
}

Once you have the collection, you can get the path of each item at the location. You can also use the Entry object to get information concerning each item, including whether it is a directory or a file, when it was last modified, etc.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...