Lines of code may be missing if you compile a solution that has a complex project structure in Microsoft Visual Studio 2008. The solution may incorrectly compile to Microsoft intermediate language (MSIL) code that omits certain method calls in the compiled .dll file. This problem occurs when there are method calls to classes, and these classes participate in an inheritance hierarchy that uses generic constraints.
When this problem occurs, you do not receive an error message.
You may experience this problem intermittently. For example, you may be able to temporarily resolve this problem by cleaning the solution. However, cleaning the solution is not a permanent resolution. The problem may reoccur if the file reference pattern that is mentioned in the "Cause" section is not modified.
Because the method call is missing from the MSIL code, breakpoints that you set on this line in the source code may move to the next line during debugging.
This problem occurs when the Visual Studio 2008 solution has the following structure:
The solution contains five or more projects, arranged in a specific configuration. For example, the solution contains five projects that are named Project 1, Project 2, Project A, Project B, and Project C.
Project 1 has project references to Project A and to Project B. Additionally, Project 1 has a file reference to Project C.
For more information about project references, visit the following Microsoft Web site:
Microsoft Visual Studio 2008 Standard Edition, Microsoft Visual Studio 2008 Professional Edition, Microsoft Visual Studio Team System 2008 Database Edition, Microsoft Visual Studio Team System 2008 Architecture Edition, Microsoft Visual Studio Team System 2008 Development Edition, Microsoft Visual Studio Team System 2008 Test Edition, Microsoft Visual Studio Team System 2008 Team Suite, Microsoft Visual Basic 2008 Express Edition