The type or namespace name 'Generic' could not be found (are you missing a using directive or an assembly reference?)

by Oliver 5. October 2010 21:43

Als ich heute eine kleine Windows-Forms-Anwendung bauen wollte, die ein paar Datenbank-Daten-Migrations-Aufgaben unabhängig von unserer Web-Anwendung ausführen soll, stieß ich beim Versuch, die zuvor per TDD entwickelte und in einer zentralen Assembly (“Generic.Core”) enthaltene Kernmethode für die Migration aufzurufen, auf den im Titel genannten Fehler. VisualStudio 2010 zeigte als Hilfe nur ein Popup an, welches implizierte, dass die Referenz auf die Assembly an dieser Stelle tatsächlich nicht berücksichtigt wird (siehe Screenshot).

 

Namespace-ignore

 

Ein wenig verzweifelt habe ich dann den referenzierenden Code erstmal auskommentiert und nochmal versucht zu bauen, und siehe da, ich bekam eine deutlich hilfreicherere Fehlermeldung zu sehen (genauer gesagt 8 Stück):

 

c:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1360,9): warning MSB3253: The referenced assembly "C:\Projects\Camping.info\Generic.Core\bin\Debug\Generic.Core.dll" could not be resolved because it has a dependency on

"System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" which is not in the currently targeted framework ".NETFramework,Version=v4.0,Profile=Client".

Please remove references to assemblies not in the targeted framework or consider retargeting your project.

Die anderen 7 Warnungen beschweren sich ebenso über vermeintlich referenzierte 4.0-er Versionen verschiedener System.*-Assemblies.

Tatsächlich war in dem neuen Projekt das Target-Framework auf v4.0 Client Profile gesetzt, wessen ich gar nicht bewusst war, allerdings stimmt ein anderer Teil der Fehlermeldung nicht, nämlich der, dass Generic.Core.dll eine Referenz auf “System.Web, Version=4.0.0.0” hätte. Generic.Core ist auf .NET Framework 3.5 getargetted. Wie dem auch sei, der Wechsel des Target-Frameworks auf entweder 3.5 oder 4.0 - jedoch ohne das Client Profile – behob den Fehler und das Projekt kompiliert nun erfolgreich.

 

Project-Properties

Happy Coding,

Oliver

 

enjoyed the post?

Tags:

Comments are closed

About Oliver

shades-of-orange.com code blog logo I build web applications using ASP.NET and have a passion for javascript. Enjoy MVC 4 and Orchard CMS, and I do TDD whenever I can. I like clean code. Love to spend time with my wife and our children. My profile on Stack Exchange, a network of free, community-driven Q&A sites

About Anton

shades-of-orange.com code blog logo I'm a software developer at teamaton. I code in C# and work with MVC, Orchard, SpecFlow, Coypu and NHibernate. I enjoy beach volleyball, board games and Coke.