If I open the entities package directory (C:\Users<USER>\AppData\Local\Unity\cache\packages\packages.unity.com\com.unity.entities@0.1.1-preview) in VS2017, most code navigation (ctrl-click, Go to definition…, etc.) doesn’t work. I assume I need to build the code to fix this. Having created a new project in the directory, setting build options to c# 7.3 and /unsafe, I get a cavalcade of error CS0101: The namespace ‘Unity.Entities’ already contains a definition for ‘X’ and error CS0234: The type or namespace name ‘X’ does not exist in the namespace ‘Y’ (are you missing an assembly reference?)
What do I need to build, or how can I solve my original problem of navigating the code?
Building the project probably created a .dll in the package folder, which Unity then picks up and imports - hence the duplicated type errors.
As for navigating the code - go to Edit → Preferences and check ‘Generate all .csproj files’, and the Unity generated .sln should include projects for all the packages code (warning: it’s been very unreliable for me, so you may need to do any combination of editor reseting/deleting the .sln and .csproj files/toggling the option on and off etc)
Worked! After toggling that on, flushing the entities package dir and reinstalling from the package manager, it now has the csproj file in my project’s dir, and opening that in vs2017 let’s me navigate the code properly.