Nie zastanawiałem się jeszcze, dlaczego tak się dzieje, ale miałem w App_Codefolderze klasy, które wywoływały w sobie metody i świetnie sobie z tym radziłem, gdy budowałem projekt .NET 4.5.2, ale potem musiałem przywróć go do 4.0, ponieważ serwer docelowy nie był aktualizowany. Właśnie wtedy znalazłem ten problem (po naprawieniu langversionw moim pliku web.config od 6 do 5 ... innej historii) ....
W jednej z moich metod występował błąd:
The type X.Y conflicts with the imported type X.Y in MyProject.DLL
Wszystkie moje klasy były już ustawione na „Kompiluj” w swoich właściwościach, jak sugerowano w przyjętej odpowiedzi tutaj, i każda z nich miała wspólną przestrzeń nazw, która była taka sama, a każda z nich miała using MyNamespace;na górze każdej klasy.
Odkryłem, że jeśli właśnie przeniosłem obraźliwe klasy, które musiały na siebie wywoływać metody, do innego, standardowego folderu o nazwie innej niż „App_Code”, przestały mieć problem z konfliktem.
Uwaga : jeśli utworzysz standardowy folder o nazwie „AppCode”, przenieś do niego swoje klasy, usuń folder „App_Code”, a następnie zmień nazwę „AppCode” na „App_Code”, twoje problemy powrócą. Nie ma znaczenia, czy użyjesz opcji „Nowy folder” lub „Dodaj folder ASP .NET”, aby utworzyć „Kod_aplikacji” - wydaje się, że wpisuje nazwę.
Być może jest to tylko problem .NET 4.0 (i być może wcześniej) ... W wersji 4.5.2 czułem się dobrze przed przywróceniem!