-2
몇 년 동안 몇 가지 프로젝트에서이 패턴을 발견했으며, 최근에는 RavenDB에서이 패턴을 발견했습니다. ILSpy에서왜 프로젝트가 Newtonsoft를 네임 스페이스에 포함 시키는가?
열기 Raven.Abstractions.dll, 나는
왜이 작업이 완료 팔자 "ProjectName.SomeScope.Newtonsoft"를 발견 ?? github에서 소스 코드를 살펴보면, 그들은 Newtonsoft의 소스를 가져오고 Foddy를 사용하여 Newtonsoft 유형을 Raven 어셈블리에 직조하고 있다고 생각합니다.유형 충돌을 방지하기 위해 수행되는 작업 만 추측 할 수 있습니다. 따라서 Raven.Abstractions.Dll은 여러분이 (소비자로서) 해당 버전을 참조하지 않고 Newtonsoft의 특정 버전을 가질 수 있습니다.
다른 의견은 있습니까?
변환기를 사용하여 변환 하시겠습니까? –
그들은 Newtonsoft에 다른 의존성을 포함 할 필요가 없으므로 그렇게합니다. 그게 전부 야. 그들은 아무것도 짜지 않는다. 어셈블리를 함께 포장하십시오. ILMerge를 사용하면 상당히 쉽게이 작업을 수행 할 수 있습니다. https://www.microsoft.com/en-us/research/people/mbarnett/를 참조하십시오. – Amy