msbuildと呼ばれるgithubのレポがあります。私はそれは、.NET Frameworkに同梱されてMSBuildのユーティリティで関連exaclty方法を知りませんが、見つけることができますどのように関連するファイルについてhintがあります:
_relatedFileExtensions
は
the extensionsでいっぱい配列です
private void FindRelatedFiles
(
Reference reference
)
{
string baseName = reference.FullPathWithoutExtension;
// Look for companion files like pdbs and xmls that ride along with
// assemblies.
foreach (string companionExtension in _relatedFileExtensions)
{
string companionFile = baseName + companionExtension;
if (_fileExists(companionFile))
{
reference.AddRelatedFileExtension(companionExtension);
}
}
...
}
:
private string[] _relatedFileExtensions = new string[] { ".pdb", ".xml", ".pri" };
これまでのように、baseName
は、サードパーティのリファレンスを拡張していない完全なパスです。したがって、関連する* .pdbは、ResolveAssemblyReferencesターゲットでコピーしたい場合は、同じディレクトリになければなりません。
thirdparty * .pdbファイルを別のソースからコピーする場合は、「ハッキリ」の解決策に対処する必要があります。そのうちの一つAfterBuildターゲットにそれをコピーすることです:
<Target Name="AfterBuild">
<Copy SourceFiles="PathToPdb" DestinationFolder="$(OutDir)"/>
</Target>
それとも、contentとしてファイルにマークを付けることができます。
<ItemGroup>
<Content Include="PathToPdb">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
https://msdn.microsoft.com/en-us/library/ ms241613.aspx –
*関連する.pdbファイルを出力ディレクトリにコピーする必要があります。*ドミトリーのリンクを参照してください。これは当てはまりません。 orignalのpdbファイルのパスはdllにハードコードされており、デバッガが探している最初の場所です – stijn