2013-03-29 7 views
7

Jesteśmy zespołem złożonym z 7 członków i chcemy stworzyć aplikację chmurową (Windows Azure) z Visual Studio. Nasza aplikacja jest hostowana na GitHub, więc zdecydowaliśmy się użyć pakietów NuGet, aby zachować światło repozytorium.Czy można odwoływać się do różnych wersji pakietów NuGet w rozwiązaniu Visual Studio?

Jednak dwa różne projekty w naszym rozwiązaniu Visual Studio wymagają odwołania do Newtonsoft.Json w wersji 4.0.2 lub Newtonsoft.Json w wersji 4.5.11.

Staraliśmy się odwołać odpowiednią wersję dla każdego projektu, ale mamy to błędy na budowie:

  1. typu „Newtonsoft.Json.Linq.JObject” jest zdefiniowane w to zespół, który nie odwołuje . Należy dodać odniesienie do zestawu "Newtonsoft.Json, wersja = 4.0.2.0, Culture = neutral, PublicKeyToken = null".

  2. nie można niejawnie przekonwertować typu „Newtonsoft.Json.Linq.JObject” do

Drugi błąd „Newtonsoft.Json.Linq.JObject” sugeruje, że istnieją konflikty między tymi dwoma wersjami, nawet jeśli nie projekt w naszym rozwiązaniu odnosi się do dwóch wersji w tym samym czasie.

Masz pomysł na rozwiązanie tego problemu?

Dzięki.

PS: Oto najważniejsze informacje, które znaleźliśmy na ten temat.

http://docs.nuget.org/docs/reference/known-issues

https://stackoverflow.com/search?q=NuGet+multi+packages+version

+0

Jak zainstalować dwie różne wersje Newtonsoft.Json w różnych projektach? Sądzę, że jawnie określa się zarówno nazwę projektu, jak i wersję pakietu, robiąc coś takiego jak 'Install-Package Newtonsoft.Json -ProjectName ProjectA -Version 4.0.2' i' Install-Package Newtonsoft.Json -ProjectName ProjectB -Version 4.5.11', powinno zrobić lewy? – Nailuj

Odpowiedz

1

Po pewnym czasie ... Wiedz, że musimy przepisać kawałek kodu, które wykorzystują starą odniesienie do wersji 4.0.2 Newtonsoft.Json.

Dzięki.