Ich habe einem Entwickler eine Satz aktualisierter Assemblies mit höherer Version zugeschickt. (Es handelt sich dabei um ein Open Source Projekt von mir) Die ursprünglichen Assemblies hat der Entwickler über Nuget bezogen. Der Entwickler hat die Assemblies von Hand ersetzt und bekommt bei der Ausführung eines Unit-Tests(Microsoft.VisualStudio.TestTools.UnitTesting) nun folgenen Fehler.
Fehlermeldung:
COMObject.cs not foundLocating source for 'c:\Source\NetOffice\COMObject.cs'. Checksum: MD5 {58 68 21 2 28 51 95 23 82 f5 2d 1d 4e 8a b2 51}
The file 'c:\Source\NetOffice\COMObject.cs' does not exist.
Looking in script documents for 'c:\Source\NetOffice\COMObject.cs'...
Looking in the projects for 'c:\Source\NetOffice\COMObject.cs'.
The file was not found in a project.
Looking in directory 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\crt\src'...
Looking in directory 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\crt\src\vccorlib'...
Looking in directory 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\atlmfc\src\mfc'...
Looking in directory 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\atlmfc\src\atl'...
Looking in directory 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\atlmfc\include'...
The debug source files settings for the active solution indicate that the debugger will not ask the user to find the file: c:\Source\NetOffice\COMObject.cs.
The debugger could not locate the source file 'c:\Source\NetOffice\COMObject.cs'.
Da ich Nuget nicht verwende(obwohl Scott Hanselman selbst im Discussion Board des Projekts interveniert hat) und von Unit-Tests schändlicherweise nur selten Gebrauch mache (bzw. sie beruflich nicht selbst schreibe da dies ausgelagert ist) bin ich etwas ratlos. Der Fehler kommt scheinbar vom Testing Framework das vermutlich immer noch mit den alten .pdb's arbeitet bzw. nach der alten Version sucht. Besagter Entwickler kann mit diesem Hinweis aber scheinbar nichts anfangen.
Hat jemand einen Hinweis warum es zu diesem Fehler kommt bzw. ob ich mit meiner Theorie richtig liege?
Hallo Sebastian.Lange,
du kannst auch einfach mit deinen neuen Assemblies ein NuGet-Packet lokal erstellen und dem Entwickler die .nupkg-File schicken. Dann braucht er es nicht online machen und er kann es problemlos installieren.
Wie sieht die packages-config aus?
Kannst du bitte deine Aversionen gegenüber Online-Sachen vermeiden? Ich behaupte mal, dass, wenn du das ganze auf den normalen Weg machen würdest, du diese Probleme nicht hättest. Ich will keine Diskussion losbrechen. Aber hier lesen Anfänger mit und die machen sowas nach: NuGet nicht zu benutzen und fallen dann böse hin. NuGet ist einfach viel einfacher als alles von Hand machen. Ohne deine Abneigung gegen fast alles im Internet hättest du das Problem nicht.
Gruss
Coffeebean
Microsoft MVP // Me // Blog // GitHub // @Egghead // All my talks // Speakerdeck