日付範囲内のログエントリを取得するためにSharpSvnを使用しました

StackOverflow https://stackoverflow.com/questions/989034

  •  13-09-2019
  •  | 
  •  

質問

私はと対話するために SharpSvn に使用していますC#のコードを経由して、私のSVNリポジトリ。私は、SVNのログエントリを取得するために、このコードを使用しています:

Collection<SvnLogEventArgs> logitems;
var uri = new Uri("http://myserver/svn/foo/bar.txt");
client.GetLog(uri, out logitems);
foreach (var logentry in logitems)
{
    string author = logentry.Author;
    string message = logentry.LogMessage;
    DateTime checkindate = logentry.Time;
}

これはうまく動作しますが、今は改訂日付で返されるログエントリを制限したいです。これは、

のようなものではsvnコマンドラインを介して行うことができるものです
svn log "http://myserver/svn/foo/bar.txt" --revision {2008-01-01}:{2008-12-31}

私はSharpSvn内の並列性を見つけ出すように見えることはできません。誰かが正しい方向に私を指すことができますか?

役に立ちましたか?

解決

あなたはこのようにそれを試すことができます:

DateTime startDateTime = // ...;
DateTime endDateTime = // ...;
SvnRevisionRange range = new SvnRevisionRange(new SvnRevision(startDateTime), new SvnRevision(endDateTime));
client.GetLog(uri, new SvnLogArgs(range), out logitems);

他のヒント

私はのあなたはGetLogパラメータを取るSharpSvn.SvnLogArgs機能のいずれかを使用してそれを行うことができるかもしれないと思う。

public bool GetLog(System.Uri target, SharpSvn.SvnLogArgs args,
        out System.Collections.ObjectModel.Collection logItems)

そのクラスは、彼らが "時間" パラメータを取ることができますようにを見てStartオブジェクトであるEnd / SharpSvn.SvnRevisionを持っています。

私はそれだけで少しやったが、あなたが探し始める可能性がどこそれは次のようになります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top