2017-11-14 15 views
2

내 Xamarin PCL 프로젝트에 NET 라이브러리가 추가 된 것을 볼 수 있습니다.System.Collections.Concurrent 어셈블리를 Xamarin PCL 프로젝트에서 사용하는 것으로 추가 할 수 없습니다.

.Net library in pcl references

그래서 나는 개체 탐색기에서 볼 수 있으며 내 mscorlib에 2 버전을 볼 수 있습니다. [2.0.5.0] 및 [4.0.0.0].

duplicate libraries of CSharp and mscorlib

그리고 당신은 내가 아니라 내 CSHARP 라이브러리 비슷한 버전의 중복을 확인합니다. 자동으로 [2.0.5.0] 버전을 가리키고 있다고 가정합니다.

흥미롭게도 동일한 솔루션의 내 안드로이드 프로젝트는 mscorlib가 참조 섹션에서 직접 refrenced되어 있고 그렇습니다. 내 안드로이드 프로젝트에서 System.Collections.Concurrent 라이브러리에 액세스 할 수 있습니다.

하지만 내 Xamarin 프로젝트에서 액세스해야합니다. 내 PCL 프로젝트에도 해당 어셈블리를 추가하는 방법이 필요합니다. 어떤 생각이라도?

+0

Xamarin은 .NET Standard 2.0으로 이전 중이므로 마이그레이션을 계획하십시오. –

+0

@LexLi : 고맙습니다. 귀하의 의견은 실제로 도움이되었습니다. +1 – SunainaDG

답변

1

LexLi의 의견은 실제로 저를 생각하게 만듭니다. 그래서 여기에 내가 한 일이 있습니다. 바라기를 이것은 도움이 될 것입니다.

  1. 내 VS2017 (Professional) 버전을 확인했으며 3 개의 업데이트가 보류 중이었습니다. 최신 (현재) 15.4.4.4가 업데이트되었습니다.

  2. 동일한 이름 (분명히 다른 위치)으로 신선한 Xamarin 크로스 플랫폼 응용 프로그램을 만들었습니다.

  3. 내가 필요한 모든 너겟 패키지가 있습니다. (버전 호환성에 많은 의존성이 있기 때문에 각 프로젝트마다 수동으로 작업하는 것이 좋습니다.)

  4. 그리고 이전 응용 프로그램에서 모든 클래스 파일을이 파일로 가져 왔습니다. 필요한 폴더 구조를 만들어야합니다. 나는 모든 것이 동일하다는 것을 확인하기 위해 app configs와 패키지 파일을 두 번 확인했다.

  5. 안드로이드 프로젝트 (오른쪽 클릭) >> 속성 >> 안드로이드 매니페스트를 수정하여 내 안드로이드 매니페스트 파일을 수정했습니다.

  6. iOS의 AppDelegate 파일과 UWP의 App.xaml.cs 파일을 확인하십시오. 때로는 일부 플러그인은 이러한 변경 사항을 필요로하기 때문에. 그러므로 이전과 똑같은 방식으로 사용하십시오.

그리고 그게 전부입니다. Object Model 및 Concurrent Collections 문제를 수정하기위한 모든 것. 하지만 그 과정에서 나는 내 애플 리케이션을위한 훌륭한 마이그레이션을 마쳤다.

원하는 경우 프로젝트에 솔루션을 직접 추가 할 수는 있지만 시도하지 않았기 때문에 제대로 작동하는지 확신 할 수 없습니다.

+0

코드 기반을 마이그레이션하는 인상적인 단계. 좋은 시도와 미래에 훨씬 더 많은 사람들이 도움이되기를 바랍니다. –