We have a solution with 30+ projects, containing the following relevant projects:
- Project A: Our Common project, containing business entities and interfaces.
- Project B: Our DataAccess project, containing implementations of repository interfaces in project A.
- Project C: Our BusinessService project, containing implementations of business service interfaces in project A, and resolving interfaces in project A to call implementations in project B and C.
- Project D: Our WebService project, resolving interfaces in project A to call the implementations in project C.
- Project E: Our RestService project, resolving interfaces in project D to call the implementations in project D.
- Project F: Our Stubs project, containing stubbed implementation of business service interfaces in project A
Result when using Go to Implementation feature on <method> in
- Project C
- Calling project B: Works fine
- Calling project C: "Implementations of <method> were not found", or goes to the stub implementation in project F if it exists
- Project D: "Implementations of <method> were not found"
- Project E: Works fine
Why does Go to Implementation not work in every case? Could we have done something to interfere with how ReSharper tries to find implementations?
If we add a GAC reference in project A to project B, then everything works!
I hope my attempts at simplification did not make the whole thing more complicated.