>

4.0 프레임 워크 버전을 대상으로하는 VS 2015에서 열린 오래된 Asp.Net WebSite 프로젝트가 있는데, 빌드하려고 할 때 오류가 발생합니다 :

The call is ambiguous between the following methods or properties: System.Linq.Enumerable.Contains<TSource>(System.Collections.Generic.IEnumerable<TSource>, TSource)  그리고 System.Linq.Enumerable.Contains<TSource>(System.Collections.Generic.IEnumerable<TSource>, TSource)

두 메소드 서명이 정확히 동일하게 보입니다.

여기에서 수업 코드 :

using System;
using System.Collections.Generic; // Gray out
using System.Linq;
using System.Web; // Gray out
using System.Web.Routing;
using System.Web.UI; // Gray out
public class UrlRoute
{
  public static string RegisterRoutes(string routes)
  {
    string MainUrl = routes;
    string result = "";
    if (MainUrl.Contains('\\')==true)
    {
      result = "CMS"
    }
    return result;
  }
}

프로젝트 속성 :

프레임 워크 세부 사항 :

SO에서 솔루션을 시도했지만 그중 아무것도 작동하지 않았습니다 [빈 폴더 삭제, 확인되지 않은 참조 확인], 오류의 원인을 이해하지 못합니다!

수정 :

Last() 에서도 동일하게 발생합니다   System.Linq 의 모든 확장 방법 :

Error CS0121 The call is ambiguous between the following methods or properties: 'System.Linq.Enumerable.Last(System.Collections.Generic.IEnumerable)' and 'System.Linq.Enumerable.Last(System.Collections.Generic.IEnumerable)'

필요한 경우 다른 구성/코드를 공유하고 싶습니다.


  • 답변 # 1

    System.Linq.dll 의 두 가지 버전을 참조했을 가능성이 높습니다 . 프로젝트는 BIN의 로컬 사본이 아닌 GAC의 버전을 사용해야합니다.

    System.Linq.dll 에 대한 명시 적 참조를 찾아서 제거하십시오.  C # 프로젝트에서.

    P.S. 솔루션에 여러 프로젝트가있는 경우 모두 동일한 버전의 .NET Framework를 대상으로해야합니다.

  • 이전 pandas - 파이썬에서 집계 된 데이터에 대한 기술 통계
  • 다음 자바 스크립트에서 자식 클래스를 변수로 저장