in src/dotnet/ReSharperPlugin.DotNetDisassembler/JitDisasmAdapters/JitDisasmProjectContextFactory.cs [12:32]
public static JitDisasmProjectContext Create(IProject project)
{
var solution = project.GetSolution();
return solution.Locks.ExecuteWithReadLock(() =>
{
var sdk = project.ProjectProperties.DotNetCorePlatform?.Sdk;
var tfmId = project.TargetFrameworkIds.TakeMax(x => x.Version.Major, min: 0);
var outputDirectory = tfmId != null ? project.GetOutputDirectory(tfmId) : null;
var assemblyName = tfmId != null ? project.GetOutputAssemblyName(tfmId) : null;
var dotNetCliExePath = GetDotNetCliExePath(solution);
return new JitDisasmProjectContext(
Sdk: sdk,
Tfm: tfmId != null ? JitDisasmTargetFrameworkFactory.Create(tfmId) : null,
OutputPath: outputDirectory?.FullPath,
ProjectFilePath: project.ProjectFileLocation?.FullPath,
ProjectDirectory: project.Location?.FullPath,
AssemblyName: assemblyName,
DotNetCliExePath: dotNetCliExePath);
});
}