유형 또는 네임스페이스 이름이 없습니다.
Visual Studio 2010으로 구축된 WCF 데이터 서비스 프로젝트가 있는데, 잘 작동했습니다.갑자기, 그것은 더 이상 컴파일되지 않았습니다.그것은 나에게 다음과 같은 메시지를 주었습니다.
오류 7 'Services' 유형 또는 네임스페이스 이름이 네임스페이스 'System'에 없습니다.데이터'(조립 참조가 누락되었습니까?)C:\U...s\Visual Studio 2010\Projects...\DataService.cs ...
오류 8 'Linq' 유형 또는 네임스페이스 이름이 네임스페이스 'System'에 없습니다(어셈블리 참조가 누락되었습니까?).DependencyResolver.cs 314
오류 10 'Web' 형식 또는 네임스페이스 이름이 네임스페이스 'System'에 없습니다.서비스 모델'(어셈블리 참조가 누락되었습니까?)
오류 12 'DataService' 유형 또는 네임스페이스 이름을 찾을 수 없습니다(사용 지침 또는 어셈블리 참조가 누락되었습니까?).
어떻게 고칠 수 있습니까?
저는 같은 문제를 겪었고, 모든 프로젝트의 "목표 프레임워크"를 동일하게 설정해야 했습니다.그리고 잘 지었습니다.프로젝트 메뉴에서 프로젝트 이름 속성을 클릭합니다.컴파일 탭을 클릭합니다.고급 컴파일 옵션을 클릭합니다.대상 프레임워크에서 원하는 프레임워크를 선택합니다.
시스템에 문제가 있었습니다.링크가 인식되지 않습니다.그using
진술서에 빨간 꼬불꼬불한 것 등이 있었습니다.제가 해결한 방법은 제 웹사이트를 target dotnet 3.5로 변경한 다음 원래 목표 프레임워크(제 경우 4.0)로 다시 전환하는 것이었습니다.
이것은 내가 클래스 이름과 같은 네임스페이스 이름을 가지고 있기 때문에 발생한다는 것을 발견했습니다.MyWorld.MyWorld = Namespace.ClassName
).
네임스페이스를 클래스와 같은 이름이 아닌 이름으로 변경하면 컴파일됩니다.
저는 ASP에서도 같은 문제에 직면했습니다.LINQ를 SQL에 사용하려고 했을 때 NET MVC 사이트.문제를 해결한 방법을 해결했습니다.
솔루션 탐색기 -> 참조 -> 시스템을 마우스 오른쪽 버튼으로 클릭합니다.Data.Linq -> 로컬 복사(참)
저는 시스템과 같은 문제를 경험한 적이 문제가 있습니다.Data.SQLite.문제의 원인은 사용한 dll이 동일해야 한다는 것입니다.프로젝트의 NET 버전입니다.
예를 들어 (나의 경우) SQLite를 에 사용한 적이 있는 경우.NET 4.5 플랫폼의 목표는 다음과 같습니다.NET 4.5도.
플랫폼 대상은 Project > (프로젝트명) Properties > Build 로 확인하실 수 있습니다.
대상 프레임워크가 동일한지 확인합니다.NET 버전.저도 같은 문제를 겪었고 수업도 들었습니다.NET은 3.5, 웹 솔루션은 4.5였습니다.저는 그것들을 동기화했고, 그것은 작동했습니다 :)
저는 같은 문제를 겪었고 위의 모든 것을 시도했지만 아무런 성공도 거두지 못했고, 그 후 그것이 무엇인지 알게 되었습니다.
저는 제 프로젝트 중 하나에서 "시스템"이라는 폴더를 만들고 그 안에 클래스를 만들었습니다.문제는 "MyProject"의 네임스페이스에 있더라도 .cs 파일이 생성될 때 "System"이라는 네임스페이스가 있기 때문인 것 같습니다.시스템".
돌이켜보면 왜 이것이 문제를 일으키는지 이해할 수 있습니다.처음에는 오류 메시지가 처음에는 문제와 관련이 없는 것 같아 정말 당황스러웠습니다.
제 경우, 제가 만든 클래스에 기존 클래스를 방해하는 네임스페이스가 있기 때문에 문제가 발생했습니다.새 클래스 A에 네임스페이스 zz.yyy.xx가 있습니다(실수로).다른 네임스페이스 yy에 있는 개체에 대한 참조입니다.xx가 클래스 A 또는 네임스페이스가 zz인 다른 클래스에서 컴파일되지 않았습니다.
나는 A 클래스 장난감의 네임스페이스를 변경했습니다.xx, 원래 그랬어야 했는데, 작동하기 시작했습니다.
링크된 파일이 있는 모든 사용자에게: 저는 이 문제가 있었고 은색 조명을 사용하고 있었는데 이 오류를 발생시키는 문제가 있는 파일이 링크된 파일이었습니다.
컴파일러의 오류는 파일이 있는 프로젝트에서 오류가 발생하고 있다는 것을 알려주었습니다.오류는 해당 프로젝트에서 발생한 것이 아니라 링크된 파일이 포함된 프로젝트에서 발생한 것입니다.그 프로젝트에 참조가 누락되었습니다.
Visual Studio의 Git 통합을 사용하여 프로젝트를 관리하는 동안 이 문제가 발생했습니다.어떤 이유에서인지 Windows Phone 8 프로젝트는 x86을 대상으로 할 때 컴파일이 잘 되지만 대상 ARM으로 설정하면 컴파일이 실패하고 Microsoft 네임스페이스에 "광고"가 존재하지 않는다는 오류가 표시됩니다.
결국 Microsoft를 제거하여 문제를 해결했습니다..*.dll을 참조하여 다시 추가하는 중입니다.
저도 같은 오류를 경험했습니다.제 프로젝트에 잘못된 어셈블리 이름이 있다는 것을 발견하고(다른 프로젝트에서 파일을 복사하여 이름 공간이 약간 혼동됨), 다시 변경한 후 프로젝트가 잘 컴파일되었습니다.
내 솔루션의 다른 프로젝트에서 실수로 클래스를 복제했기 때문에 발생한 매우 유사한 오류 메시지를 받았습니다.복제를 삭제하면 문제가 완료
또한 VS2010에서 WPF 클래스 라이브러리를 처리하는 경우와 같이 대상 프레임워크가 동일한지 확인하지 못하는 경우 Visual Studio를 다시 시작하면 됩니다.그것으로 끝입니다.
저의 경우 프로젝트에 변경 사항이 없었고 컴파일이 중지되어 "유형 또는 네임스페이스 이름 XXX가 존재하지 않습니다."를 사용하여 해당 XXX 네임스페이스/클래스에 대한 인텔리전스 자체가 정상적으로 작동합니다.문제는 정말로 참고문헌에 있었습니다!
재생산 단계:
솔루션에는 프로젝트 A, 프로젝트 B가 있습니다.ProjectA 제3자 log4net에 대한 참조이며 표시되어 있습니다.
Copy local: true
Project B는 Project A를 참조하며 log4net에 대한 참조가 없습니다.솔루션은 정상적으로 컴파일됩니다.프로젝트 A의 변경 사항: log4net에 대한 참조 속성:
Copy local: false
.- bin 및 obj 폴더를 정리합니다.
- 컴파일할 때 프로젝트 A는 컴파일하지만 프로젝트 B는 프로젝트 A 네임스페이스를 찾지 못한다고 불평합니다.
This is because ProjectB
bin 폴더에 타사 라이브러리가 없습니다. (log4net in my case)!
이 경우 해결책은 -입니다.
- 타사 라이브러리 참조가 다음으로 설정되었는지 확인합니다.
Copy local: true
또는 - 참조 경로 아래에 있는 프로젝트 속성의 이러한 라이브러리에 경로를 추가합니다.
저는 마이크로소프트를 언급하고 있습니다.커머스 서버.런타임.주문하고 이 오류가 발생했습니다.이 프로젝트는 오래되었으며 대상 프레임워크가 있습니다.NET 2.0.출력에서 다음 오류가 발생했습니다.
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1605,5): warning MSB3268: The primary reference "Microsoft.CommerceServer.Runtime" could not be resolved because it has an indirect dependency on the framework assembly "System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" which could not be resolved in the currently targeted framework. ".NETFramework,Version=v2.0". To resolve this problem, either remove the reference "Microsoft.CommerceServer.Runtime" or retarget your application to a framework version which contains "System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
저는 단순히 목표 프레임워크를 로 변경했습니다.NET 4 그리고 이제 그것은 지어집니다.
최근에 시스템 복원을 수행해야 했기 때문에 복원 이후에 작업하던 여러 파일이 변경/사라졌습니다.그 중 일부는 DLL 파일이었습니다.전체 프로젝트를 검색하기 위해 소스 컨트롤을 사용했지만 위와 유사한 문제가 있었습니다.오류를 수정하려면 DLL을 제거해야 할 수도 있다는 답변을 발견하고 다시 읽었습니다.이것이 제 시나리오의 경우였습니다.
를 제거하기WebMatrix.WebData
그리고 그것을 추가하는 것뿐만 아니라 그것을 추가합니다.WebMatrix.Data
나의 잘못을 고쳤습니다.The type or namespace name 'Data' does not exist in the namespace 'WebMatrix' ...
.
소스 제어 하에 있는 경우 .refresh.dll 파일을 삭제합니다.그런 다음 다시 빌드합니다.그건 작동할 거야.이것은 나에게 효과가 있었습니다.
언급URL : https://stackoverflow.com/questions/5567945/type-or-namespace-name-does-not-exist
'source' 카테고리의 다른 글
Bash의 멀티스레딩 (0) | 2023.05.02 |
---|---|
MongoDB에서 날짜를 저장하는 가장 좋은 방법은 무엇입니까? (0) | 2023.05.02 |
Postgres에서 빠른 임의 행 선택 (0) | 2023.05.02 |
Git의 "우리가 병합할 수 있는 항목이 아닙니다" 오류를 해결하는 방법 (0) | 2023.05.02 |
Mongodb가 중첩된 하위 문서 업데이트 (0) | 2023.05.02 |