This means the drive letters that NT8 puts into the .csproj "fight" with one another, when I check my NinjaTrader.Custom.csproj into and out of my central repository in GitHub. For instance, this Reference:
<Reference Include="System.ValueTuple">
<HintPath>C:\Documents\NinjaTrader 8\bin\Custom\packages\...\System.ValueTuple.dll</HintPath>
</Reference>
actually needs to be this (note the E: drive) on another machine:
<Reference Include="System.ValueTuple">
<HintPath>E:\Documents\NinjaTrader 8\bin\Custom\packages\...\System.ValueTuple.dll</HintPath>
</Reference>
I have worked around this with an environment variable "MyProjectDir" that I set on each machine to point to the base "C:\Documents" or "E:\Documents" directory.
This results in a reference like so:
<Reference Include="System.ValueTuple">
<HintPath>$(MyProjectDir)\NinjaTrader 8\bin\Custom\packages\...\System.ValueTuple.dll</HintPath>
</Reference>
This compiles fine in Visual Studio 2022, ofc, b/c it is very common technique for handling this problem.
But I cannot make this work with the NT8 Config.xml file
If I replace:
<string>*MyDocuments*\NinjaTrader 8\bin\Custom\packages\...\System.ValueTuple.dll</string>
with any of the following
<string>*MyProjectDir*\NinjaTrader 8\bin\Custom\packages...
<string>%MyProjectDir%\NinjaTrader 8\bin\Custom\\packages...
<string>$(MyProjectDir)\NinjaTrader 8\bin\Custom\\packages​...
the project file that NT8 generates on load is messed up and loses the full path entirely.
How do I solve this problem in the NT8 ecosystem?
(Note that I cannot use *MyDocuments*, b/c I need to use NT8 and OneDrive on the same machine, so I have had to take the extraordinary measures I have documented at the bottom of the page here:
https://forum.ninjatrader.com/forum/...-session/page2)

Comment