programing

CS0433 "A.dll과 B.dll 모두에 유형 'X'가 이미 존재합니다"라는 오류는 어디에서 발생합니까?

itmemos 2023. 7. 1. 08:05
반응형

CS0433 "A.dll과 B.dll 모두에 유형 'X'가 이미 존재합니다"라는 오류는 어디에서 발생합니까?

IIS가 아닌 내부 웹 서버를 사용하여 Visual Studio 2008 SP1에서 웹 앱을 실행하면 위에 언급된 오류가 표시됩니다.

전체 오류(소스 파일 Default.aspx.cs ):

컴파일러 오류 메시지:CS0433:'WebApplication3' 유형입니다.사이트 1'이(가) 두 'c:\Windows\Microsoft.NET 프레임워크\v2.0.50727\임시 ASP.NET 파일\root\aa563bcf\59deedc0\App_Web_site1.master.cdcab7d2.muchzy9v.dll' 및 'c:\Windows\Microsoft.NET 프레임워크\v2.0.50727\임시 ASP.NET 파일\root\aa563bcf\59deedc0\assembly\dl3\44c3a3cf\80dd34ed_6968c01\WebApplication3.DLL'

이전의 전체 경고:

경고: CS0436:'WebApplication3' 유형입니다.'c:'의 _Default:\Windows\Microsoft.NET 프레임워크\v2.0.50727\임시 ASP.NET 파일\root\aa563bcf\59deec0\App_Web_default.aspx.cdcab7d2._tlkwdos.0.cs '이(가) 가져온 유형 'WebApplication3'과(와) 충돌합니다.'c:'의 _Default:\Windows\Microsoft.NET 프레임워크\v2.0.50727\임시 ASP.NET 파일\root\aa563bcf\59deedc0\assembly\dl3\44c3a3cf\e096e61c_6568c01\WebApplication3.DLL'. 'c:'에 정의된 형식을 사용합니다.\Windows\Microsoft.NET 프레임워크\v2.0.50727\임시 ASP.NET 파일\root\aa563bcf\59deec0\App_Web_default.aspx.cdcab7d2._tlkwdos.0.cs '입니다.

경고 소스는 중간 파일 App_Web_default.aspx.cdcab7d2를 가리킵니다._tlkwdos.0.cs :

Line 162:    
Line 163:    [System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()]
Line 164:    public class default_aspx : global::WebApplication3._Default, System.Web.IHttpHandler {
Line 165:        
Line 166:        private static bool @__initialized;

그리고 제 질문: 이것은 어디서 오는 것일까요?

웹 앱(웹 사이트 아님!)에는 Default.aspxSite1각각 하나씩 있습니다.마스터, 종속성 없음.그들은 거의 비어있어요, 그리고.asp:Label했습니다.이전에는 이 웹 앱이 정상적으로 작동했습니다.Default.aspx.cs 에서 마스터에 대한 참조를 제거하면 모든 것이 잘 진행됩니다.마스터는 일부 코드만 가지고 있습니다.

이것은 사실 많은 작은 화재 및 망각 테스트 웹 앱 중 하나이기 때문에 저는 신경 쓰지 않았습니다.하지만 이전에는 이런 것을 본 적이 없었는데, 이제는 어떻게 해야 할지 궁금하고, 코드를 새 프로젝트에 복사해야 합니다(청소 솔루션은 도움이 되지 않습니다).

참고: 는 이 게시물과 다른 게시물들을 읽었지만, 적용되지 않습니다.

이론.

이 문제가 응용 프로그램의 버그(예: 중복된 클래스 이름)로 인해 발생하지 않은 경우:

이 문제는 응용 프로그램의 프로젝트를 변경하여 새 빌드(예: 코드/참조/리소스 변경)를 생성한 후에 발생하는 것으로 나타납니다.Visual Studio가 응용 프로그램의 obj/bin 폴더의 전체 내용을 대체하지 않기 때문에 이 문제는 이 새 빌드의 출력 내에 있는 것으로 보입니다.이렇게 하면 응용프로그램의 휴지통 폴더 내용 중 적어도 일부가 최신 버전이 아닙니다.

이 문제가 발생할 때 "Temporary ASP.NET Files" 폴더를 지우는 것만으로는 문제가 해결되지 않습니다.다음에 응용 프로그램에 액세스할 때 응용 프로그램의 bin 폴더의 오래된 내용이 "Temporary ASP.NET Files" 폴더에 다시 복사되어 문제가 지속되기 때문에 문제를 해결할 수 없습니다.중요한 것은 모든 기존 파일을 제거하고 Visual Studio가 모든 개체를 다시 빌드하도록 하는 것이므로 다음에 응용 프로그램에 액세스할 때 새 bin 파일이 "Temporary ASP.NET Files" 폴더에 복사됩니다.

해결책

  1. Visual Studio 닫기
  2. iisreset 수행
  3. "Temporary ASP.NET Files" 폴더 내의 모든 폴더 및 파일 삭제(경로는 오류 메시지에서 참조됨)
  4. 문제가 되는 응용프로그램의 "obj" 및 "bin" 폴더 삭제
  5. Visual Studio를 다시 시작하고 솔루션을 엽니다.
  6. "깨끗한 솔루션"을 수행한 후 "솔루션 재구성"을 수행합니다.

설명.

  • 1-2단계: 삭제해야 하는 폴더/파일에서 리소스 잠금을 제거합니다.
  • 3-4단계: 이전 빌드 파일 모두 제거
  • 5-6단계: 빌드 파일의 새 버전 만들기

하고 w3svc에서 합니다.c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\

추가된

  • 윈도우즈 7에서

    c:\Users\{username}\AppData\Local\Temp\Temporary ASP.NET Files\root\

  • IIS 서버(64비트)에서도 이 문제가 발생할 수 있습니다.다음을 찾습니다.

    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root

    (서버에서 최신 버전인 경우 v4.0.19를 사용 중인 프레임워크 버전으로 대체)

.cs 파일을 App_Code에 배치하고 웹 응용 프로그램 프로젝트에서 컴파일하도록 빌드 작업을 변경한 경우 이 문제가 발생할 수 있습니다.

App_Code as Content의 .cs 파일에 대한 빌드 작업을 수행하거나 App_Code의 이름을 다른 이름으로 변경합니다.인텔리센스가 콘텐츠로 표시된 .cs 파일을 수정하지 않기 때문에 이름을 변경했습니다.

더 많은 정보는 http://vishaljoshi.blogspot.se/2009/07/appcode-folder-doesnt-work-with-web.html 에서 확인할 수 있습니다.

모든 aspx 페이지 및 마스터 페이지의 상속 태그를 확인합니다.동일한 이름을 가진 두 부분 클래스가 있을 수 있습니다.하나를 변경하고 다시 컴파일합니다.

다음은 몇 가지 추가 정보입니다.

http://blogs.msdn.com/b/carloc/archive/2007/06/12/compiler-error-message-cs0433-in-asp-net-2-0.aspx

이 모든 제안에도 불구하고 저는 여전히 문제가 있었습니다.App_Code 내부의 일부 클래스가 두 개의 DLL로 컴파일되고 있습니다.다음과 같은 것(간체):

warning CS0436: The type 'HcmDbGeographyModelBinder' in 

'<user_profile_dir>\AppData\Local\Temp\Temporary ASP.NET Files\temp\3b1ed8ee\11405e8e\App_Code.oqr0kusq.0.cs' 

conflicts with the imported type 'HcmDbGeographyModelBinder' in 

'<user_profile_dir>\AppData\Local\Temp\Temporary ASP.NET Files\temp\3b1ed8ee\11405e8e\assembly\dl3\ea0aa3ee\6022e6d5_2cc8cf01\HCM.Web.Backoffice.DLL'.

방금 "App_Code" 폴더 이름을 "Code"로 변경했습니다.이것은 MVC5 프로젝트이므로 웹 프로젝트 루트 내에서 .cs 파일을 제공하는 데 문제가 없을 것입니다.

에서 App_Code폴더를 웹사이트 바로 아래에 배치하여 이 문제를 해결했습니다.

ASPX 파일에 중복된 TagPrefix가 있는 경우에도 이 문제가 발생할 수 있습니다.

그러면 이 오류가 발생합니다.

<%@ Register Src="Control1.ascx" TagName="Control1" TagPrefix="uc1" %>

<%@ Register Src="Control2.ascx" TagName="Control2" TagPrefix="uc1" %>

두 번째 "uc1"을 "uc2"로 변경하면 이 문제를 해결할 수 있습니다.

수정됨...

<%@ Register Src="Control1.ascx" TagName="Control1" TagPrefix="uc1" %>

<%@ Register Src="Control2.ascx" TagName="Control2" TagPrefix="uc2" %>

참조: https://support.microsoft.com/en-in/help/2028526/building-an-asp-net-project-in-visual-studio-results-in-compiler-error

Visual Studio를 사용하여 ASP.NET 프로젝트를 빌드할 때 다음과 유사한 오류 메시지가 임의로 표시될 수 있습니다.

컴파일러 오류 메시지:CS0433:'ASP.summary_common_controls_notes_ascx' 유형은 두 'c:\Windows\Microsoft.NET\Framework64\v2.0.50727\임시 ASP.NET 파일\Book_Details\abc12345\def8910\App_Web_msftx123.dll' 및 'c:\Windows\Microsoft.NET\Framework64\v2.0.50727\임시 ASP.NET 파일\Book_Details\abc12345\def8910\App_Web_msfty456.dll'

설명:이 요청을 처리하는 데 필요한 리소스를 컴파일하는 동안 오류가 발생했습니다.다음과 같은 특정 오류 세부 정보를 검토하고 소스 코드를 적절하게 수정하십시오.

오류: 100: 101 라인 100: 라인 101:
1021988년 10월 10일:
103103은 다음과 같습니다.
104: 1450 파운드 104:

요약.

원본 파일: d:\http\post\publisher\default.aspx 줄: 102

이 오류가 발생할 수 있는 일반적인 시나리오는 아래에 설명되어 있습니다.

시나리오 1

설명:일반적인 원인은 두 개의 클래스 정의를 포함하지만 동일한 클래스 이름을 가진 두 개의 어셈블리가 동일한 웹 응용 프로그램 bin 폴더에 있는 경우입니다.둘 이상의 Default.aspx가 단일 어셈블리로 컴파일된 경우 이 문제가 발생할 수 있습니다.일반적으로 이 문제는 마스터 페이지(Default.master)와 기본 ASPX 페이지(Default.aspx)가 모두 _Default 클래스를 선언할 때 발생합니다.솔루션:마스터 페이지의 클래스 이름을 변경하고(대부분의 경우 _Default에서) 프로젝트를 재구성합니다.클래스 간의 이름 충돌을 해결하는 것이 중요합니다.

시나리오 2

: 하는 데 됩니다.Visual Studio의 참조 경로는 프로젝트에서 사용하는 어셈블리 참조의 폴더 경로를 지정하는 데 사용됩니다.경로에 동일한 클래스 이름을 포함하는 어셈블리가 포함되어 있을 수 있습니다.동일한 어셈블리(다른 버전 또는 이름)에 여러 참조가 추가되어 명명 충돌이 발생할 수 있습니다.
파일: 참조를 합니다.이전 버전 참조를 제거합니다.이렇게 하려면 Visual Studio에서 웹 사이트를 마우스 오른쪽 단추로 클릭하고 속성에서 "참조"를 선택합니다.

시나리오 3

설명:기본적으로 ASP.NET 웹 응용 프로그램이 컴파일될 때 컴파일된 코드는 Temporary ASP.NET Files 폴더에 저장됩니다.기본적으로 액세스 권한은 컴파일된 코드에 액세스하는 데 필요한 신뢰도가 높은 ASP.NET 로컬 사용자 계정에 부여됩니다.버전 충돌을 유발하는 기본 권한의 일부 변경이 있었을 수 있습니다.안티바이러스 소프트웨어가 실수로 어셈블리를 잠글 수도 있습니다.솔루션:모든 내용에서 임시 ASP.NET 파일 폴더를 지웁니다.

시나리오 4

설명:web.config의 batch 특성이 True로 설정되면 파일에 처음 액세스할 때 필요한 컴파일로 인한 지연이 제거됩니다. ASP.NET은 컴파일되지 않은 모든 파일을 배치 모드로 미리 컴파일하므로 파일이 처음 컴파일될 때 지연이 발생합니다.배치 컴파일을 해제하면 응용 프로그램에 존재할 수 있지만 보고되지 않는 마스킹된 컴파일 오류가 노출될 수 있습니다.그러나 이 문제에서 더 중요한 것은 ASP.NET에 개별 .aspx/.ascx 파일을 단일 어셈블리가 아닌 별도 어셈블리로 동적으로 컴파일하라는 것입니다.솔루션:web.config 섹션에서 batch=false를 설정합니다.컴파일 섹션에서 batch=false를 설정하면 Visual Studio의 애플리케이션 빌드 시간에 상당한 성능 영향을 미치기 때문에 임시 솔루션으로 간주해야 합니다.

시나리오 5

설명:ASP.NET 응용 프로그램의 web.config 파일을 수정하거나 bin 폴더의 파일을 변경(예: 추가, 삭제 또는 이름 변경)하면 AppDomain이 다시 시작됩니다.이 경우 웹 사이트가 다시 시작될 때 모든 세션 상태가 손실되고 캐시된 항목이 캐시에서 제거됩니다.웹 응용 프로그램의 상태가 일관되지 않아 문제가 발생할 수 있습니다.솔루션:web.config 파일을 터치(편집)하여 AppDomain 재시작을 트리거합니다.

시나리오 6

설명:소스 코드는 App_Code 폴더에 저장할 수 있으며 실행 시 자동으로 컴파일됩니다.결과 어셈블리는 웹 응용 프로그램의 다른 코드에 액세스할 수 있습니다.따라서 App_Code 폴더는 컴파일된 코드 대신 소스 코드를 저장할 수 있다는 점을 제외하면 Bin 폴더와 매우 유사하게 작동합니다.원본 파일이 변경되면 클래스가 다시 컴파일됩니다.오래된 어셈블리로 인해 충돌이 발생할 경우 재컴파일을 강제로 실행하면 문제가 해결될 수 있습니다.솔루션:Bin 또는 App_Code 폴더에서 파일을 눌러 전체 재컴파일을 트리거합니다.

이것은 제 웹의 오류 때문에 저에게 일어난 일입니다.구성

<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

Sytem.Web.Helpers는 3.0.0.0 대신 1.0.0을 가리켰습니다(MVC 3은 이 프로젝트에 사용 중입니다).

IIS가 로컬 폴더에서 참조를 찾을 수 없었기 때문에 GAC에서 두 가지 다른 버전을 찾았습니다.올바른 참조를 가리킨 후 IIS는 로컬 dll을 찾아 GAC를 검색하는 대신 이를 사용했습니다.

은 같은 이 여러 개의 클이여러개로지경수발있다습니생으로 되었을 때 할 수 ..aspx.cs파일. 즉, 두 페이지가 서로 다른 파일 이름으로 작성되었지만 실수로 같은 클래스 이름을 가진 경우.

// file a.aspx
public partial class Test1: System.Web.UI.Page

// file b.aspx
public partial class Test1: System.Web.UI.Page

웹 애플리케이션을 구축하는 동안에는 경고가 표시되지만 애플리케이션이 실행되면 애플리케이션이 더 이상 작동하지 않고 OP의 질문에 언급된 예외가 발생합니다.

두 클래스 이름이 겹치지 않도록 하면 문제가 해결됩니다.

저는 또 다른 이유를 찾았습니다. 도구 상자의 아이콘과 프로젝트의 참조에 사용되는 다른 버전입니다.개체를 어떤 형식으로 삽입한 후 오류가 발생했습니다.

"Clean Solution"에 이어 "Rebuild Solution"에도 문제가 해결될 것으로 보입니다.

모호성을 해결하기 위해 참조 요소 중 하나에 대한 별칭을 정의할 수 있습니다.

.csproj다음 항목을 추가합니다.

<ItemGroup>
    <Reference Include="WebApplication3.Site1">
      <Aliases>MyAssembly</Aliases>
    </Reference>
</ItemGroup>

그런 다음 사용할 수 있습니다.WebApplication3.Site1다음과 같이:

using MyAssembly;

나는 결국 마스터의 방식을 바꾸게 되었습니다.페이지 마크업에서 유형이 참조됩니다.

<%@ MasterType VirtualPath="~/x/y/MyMaster.Master" %><%@ MasterType TypeName="FullyQualifiedNamespace.MyMaster" %>

자세한 내용은 여기를 참조하십시오.

이것이 누군가에게 도움이 되기를 바랍니다.

적어도 저는 어셈블리에 대한 참조를 제거하고 이름이 다른 최신 버전에 대한 참조를 추가했을 때 이 문제가 발생했습니다.이 경우 이전 어셈블리가 binobj 폴더에 남아 있고 Visual Studio에서 Clean solution 작업을 수행할 때 제거되지 않은 것 같습니다(더 이상 프로젝트의 일부가 아니기 때문일 수 있음).이 경우 오류가 발생하는 프로젝트의 binobj 폴더 내용을 Windows 탐색기(또는 파일 관리 도구)에서 삭제하기만 하면 됩니다.그런 다음 Visual Studio에서 솔루션을 치료하고 재구성합니다.

우리의 경우, 이유는 IIS의 사이트에 대한 .dll 버전의 차이였습니다.하위 도메인을 통해 다른 도메인에 액세스할 수 있도록 IIS에서 서로 아래에 배치됩니다.첫 번째 web.config에서 상속되며, 이를 다음 web.config와 결합하면 mvc.dll 버전이 달라 실패합니다.

저도 비슷한 문제가 있었습니다.입니다: 속성이 .[Build Action]로 설정합니다.[Compile]이 아닌 다른 App_Code맘에 들다Application_Code래 부터.App_Code폴더는 두 개의 어셈블리로 컴파일된 동일한 클래스를 가진 별도의 어셈블리로 컴파일됩니다.

클래스 이름이 같은 두 개의 asx 컨트롤에 대해 동일한 문제가 있었습니다.

제어 1: <%@ 제어 언어="C#" ClassName="myClassName" AutoEventWireup="true...> Control2: <%@ Control Language="C#" ClassName"="myClassName" AutoEventWireup="true...>

단순히 클래스 이름을 변경하여 수정했습니다.

제어 1: <%@ 제어 언어="C#" ClassName="myClassName1" AutoEventWireup="true...> Control2: <%@ Control Language="C#" ClassName="myClassName2" AutoEventWireup="true...>

솔루션을 닫았다가 다시 연 다음 프로젝트 참조에서 더블업 여부를 확인합니다.

enter image description here

NuGet을 사용하고 DLL 참조 위치를 변경한 경우 이 문제가 발생할 수 있습니다.이 문제를 해결하려면 항목을 제거하는 프로젝트 파일을 수동으로 편집해야 합니다. 예:

  <Import Project="..\packages\CefSharp.WinForms.53.0.0\build\CefSharp.WinForms.targets" Condition="Exists('..\packages\CefSharp.WinForms.53.0.0\build\CefSharp.WinForms.targets')" />

이러한 "<가져오기" 참조가 프로젝트 파일의 다른 위치에 나타날 수 있으므로 주의하십시오.

매우 빠르고 편리한 해결책은 Visual Studio의 놀라운 지능을 악용하여 일시적으로 클래스를 참조하는 것입니다.

예:

System.Runtime.CompilerServices.ExtensionAttribute x = null;

커서를 선 위에 놓거나 이동할 때 다음 오류를 볼 수 있습니다.

'시스템'런타임.컴파일러 서비스.확장 특성'이(가) 두 'C:'에 모두 있습니다.\프로그램 파일\참조 어셈블리\Microsoft\프레임워크\v3.5\시스템.Core.dll'

충돌을 일으키는 두 가지 원인을 즉시 알 수 있습니다.

System.Core.dll보관할 .vmdk 파일이므로 다른 파일을 삭제합니다.

나는 내 것이 앉아 있는 것을 발견했습니다.bin디렉토리입니다. 그러나 이 디렉토리는 프로젝트의 다른 위치에 있을 수 있습니다.

사실 이것은 명심할 가치가 있습니다, 왜냐하면 그 이후로.bin디렉토리가 TFS 변경 세트의 일부로 포함되지 않을 수 있습니다. 변경 사항을 체크인해도 팀의 다른 구성원이 문제를 해결하지 못하는 이유를 설명할 수 있습니다.

이전 asp.net (v1 또는 2) 웹 사이트를 .net 4.5에서 웹 애플리케이션으로 실행하도록 변환하고 있습니다.

제 해결책은 문제를 일으키는 사용자 제어 이벤트 처리기 대리인을 별도의 실제 파일로 이동하는 것이었습니다.

//move this line to a new physical file:
public delegate void LocationSearchedEventHandler( object sender );

public partial class controls_Drives_LocationAddPanel : UserControl
{
    public event LocationAddedEventHandler LocationAdded;
    protected virtual void OnLocationAdded(LocationAddEventArg e)
    {

여기에는 꽤 많은 이유가 있습니다.그리고 위에서 언급한 대부분의 것들은 다른 시나리오에 적용됩니다.제가 주목한 것은 인증이 '없음'이 아닌 다른 것으로 설정되었을 때만 오류가 발생한다는 것입니다.테스트 목적을 위해 이 기능을 작동시킬 것입니다.

다음에 대한 오류 URL을 클릭할 때 첫 번째 구글 히트를 클릭할 때 여기로 리디렉션되었습니다.CS0433으로, 으로적구체,로

The type 'Package' exists in both 'Windows... Version=N.N.N.N, Culture=neutral, PublicKeyToken=null, ContentType=Windows...' and 'Windows..., Version=255.255.255.255, Culture=neutral, PublicKeyToken=null, ContentType=Windows...'

제가 그것을 고치기 위해 했던 모든 것들의 개요를 설명하는 대신, 제가 무엇을 했는지 말씀드리겠습니다. 그것을 깨뜨린 것입니다.코드 업데이트가 필요한 레포를 위해 NuGet 패키지를 업데이트하러 갔습니다.패키지는 꽤 오래되었고(1년 정도) 처음에는 C# 프로젝트용으로 업데이트하려고 했습니다.

++ 을 target으로 다운그레이드했습니다.15063나는 또한 C# 프로젝트가 두 가지를 모두 가지고 있다는 것을 알아차렸습니다.TargetPlatformMinVersion그리고.TargetPlatformVersion에로새착으로 새로 10.0.17134.0

내가 "고치기" 위해 해야 할 유일한 일은 그것을 바꾸는 것이었습니다.TargetPlatformMinVersion 은▁the보다 높은 TargetPlatformMinVersionC# 프로젝트를 위해.C++ 프로젝트를 두 버전 중 하나로 수정해도 동작은 변경되지 않았습니다.왜 이것이 갑자기 작동을 멈췄는지는 모르겠지만, 비슷하게 차단된 누군가가 유사한 전략을 사용하여 피클에서 벗어날 수 있기를 바랍니다.

2Toad의 답변을 시도하는 것 외에도 Visual Studio를 닫고 .vs 폴더를 삭제해야 했습니다.그 후, 모든 것이 올바르게 구축되었습니다.

우연히 발생한 오류는 내 Temp 폴더를 전혀 지정하지 않고 시스템에서 생성된 다른 폴더를 참조하고 있었습니다.특정 오류 저장을 소홀히 했습니다 :\

다른 솔루션이 작동하지 않으면 aspx 파일 및 aspx.cs 파일을 유발하는 문제의 상속 클래스 이름을 새 이름으로 바꾼 다음 솔루션을 다시 만듭니다.그러면 그 문제는 확실히 해결될 것입니다.이건 나에게만 효과가 있었습니다.

예:

aspx 파일에서 상속 클래스 이름을 Defaultnew로 변경합니다.

<%@ Page Title="" Language="C#"  MasterPageFile="~/Main.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Defaultnew" %>

aspx.cs 파일에서 클래스 이름을 aspx 파일에 사용된 것과 동일하게 변경합니다.

using System;
using System.Collections.Generic;
using System.Web;

public partial class Defaultnew : System.Web.UI.Page
{

Visual Studio를 닫고 프로젝트 디렉토리의 bin 및 obj 폴더 지우기

언급URL : https://stackoverflow.com/questions/1757289/where-does-error-cs0433-type-x-already-exists-in-both-a-dll-and-b-dll-come

반응형