Moje rozwiązanie C # WinForms ma dwa projekty. Biblioteka DLL, która jest głównym projektem, nad którym pracuję, oraz wykonywalny plik WinForms, który nazywam „Sandbox”, dzięki czemu mogę łatwo skompilować / uruchomić / debugować bibliotekę DLL za jednym razem.
Pracuję w .Net 4.0 dla obu projektów.
Wszystko działało dobrze, dopóki nie dodałem pozornie niewinnego kodu i odniesienia do System.Web w bibliotece DLL. Teraz mój projekt Sandbox nie widzi przestrzeni nazw projektu DLL. Nie zmieniłem niczego, co moim zdaniem powinno wpłynąć na to.
Jeśli usunę odniesienie projektu do biblioteki DLL z odniesień piaskownicy i ponownie je dodam, wówczas czerwone podkreślenia znikną, a kodowanie kolorami powróci dla wszystkich moich klas itp .; ale jak tylko spróbuję zbudować rozwiązanie, wszystko znowu się rozpada.
Kiedy klikam prawym przyciskiem myszy projekt DLL w odniesieniach piaskownicy i przeglądam w przeglądarce obiektów, widzę przestrzeń nazw i wszystko, co się tam znajduje.
Mam przeczucie, że to może być jakiś błąd?
Czy to jakiś błąd w VS2010? Miałem ten sam problem kilka miesięcy temu i mogłem go wtedy naprawić tylko poprzez stworzenie zupełnie nowego projektu i ponowne zaimportowanie moich plików. Tym razem jednak mam bajlion plików i zrobię to tylko w ostateczności!
Edycja: po panicznym przejściu i cofnięciu wszystkich moich zmian, próbując znaleźć przyczynę problemów, wygląda na to, że jest to ta linia:
string url = "http://maps.google.com?q=" + HttpUtility.UrlEncode(address);
Jeśli wykomentuję tę linię, nie otrzymam żadnych błędów przestrzeni nazw, a projekt zostanie poprawnie zbudowany. Nie widzę jednak nic złego w tej linii.