我们正在使用C ++开发市场模拟程序,我们希望在模拟运行时跟踪变更集,因为程序会随着时间的推移而变化。我们需要将changeset值存储到包含模拟结果的文本文件中。我在社区大学和一些学生一起工作。我们发现了具有我们需要的功能的库," Microsoft.TeamFoundation.VersionControl.Client.dll"及其在文件系统中的位置,但我们无法引用此库来使用我们需要的功能。 Visual Studio没有为我们提供引用此库的选项。我们还尝试了一些包含此类的NuGet包,但它们没有安装,因为NuGet包没有包含任何与该框架兼容的程序集引用或内容文件"。
"Attempting to resolve dependency 'Machado.Microsoft.TeamFoundation (≥ 12.0.0.0)'.
Installing 'Machado.Microsoft.TeamFoundation 12.0.0.0'.
Successfully installed 'Machado.Microsoft.TeamFoundation 12.0.0.0'.
Installing 'Machado.Microsoft.TeamFoundation.Client 12.0.0.5-beta5'.
Successfully installed 'Machado.Microsoft.TeamFoundation.Client 12.0.0.5-beta5'.
Adding 'Machado.Microsoft.TeamFoundation 12.0.0.0' to FOR_REAL_THIS_TIME_GUYZ.
Uninstalling 'Machado.Microsoft.TeamFoundation 12.0.0.0'.
Successfully uninstalled 'Machado.Microsoft.TeamFoundation 12.0.0.0'.
Install failed. Rolling back...
Could not install package 'Machado.Microsoft.TeamFoundation 12.0.0.0'. You are trying to install this package into a project that targets 'Native,Version=v0.0', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author."
任何帮助将不胜感激。
答案 0 :(得分:1)
您的程序需要知道它的构建源的版本,而不是当前版本,因此它不应该尝试在运行时访问源代码控制。
作为构建过程的一部分,添加一个预构建事件,该事件执行将变更集编号写入文件的程序。根据您的源代码控制,可能已经有一个命令行工具可以执行此操作,或者您可能需要使用一个小型C#程序和您尝试引用的库来创建一个。