6

我正在尝试使用 sharpsvn 读取 .csproj 文件的内容,但我似乎总是得到一个空文件。

这是我的代码:

MemoryStream myOut = new MemoryStream();       
svnClient.Write(path, myOut))
return myOut.GetLibsFromCsproj();

private static string GetLibsFromCsproj(this MemoryStream csjpros)
{
    TextReader tr = new StreamReader(csjpros);
    XElement projectNode = XElement.Load(tr);
    XNamespace msbuild = "http://schemas.microsoft.com/developer/msbuild/2003";
    var referenceNodes = projectNode.Descendants(msbuild + "ItemGroup").Descendants(msbuild + "Reference").ToString();
    return referenceNodes;
}

当我的代码到达时XElement.Load(tr);,它会抛出一个错误,指出缺少根元素。它把我们的那myOut是空的。

难道我做错了什么?

4

2 回答 2

8

你还记得MemoryStream在写入后将背面重置为开头吗?return尝试在语句之前添加这一行:

myOut.Seek(0, SeekOrigin.Begin);
于 2012-06-07T20:22:28.427 回答
2

也许这会有所帮助:

如何使用 c# 使用 sharpsvn 客户端读取文件的每个修订版

于 2012-06-07T20:09:40.067 回答