frameworkAssemblies
odnosi się do zespołów znajdujących się w pamięci podręcznej GAC (Global montaż).
Rozważmy następujący przykład:
chcę użyć API ADO.NET (SqlConnection
, SqlCommand
) do pracy z bazą danych SQL Server. Wiem, że te apisy są częścią System.Data.dll
i dlatego chcą się z nim zapoznać. Teraz, gdy zainstalowana jest pełna wersja .NET Framework, instaluje ona niektóre zespoły w GAC (również ten System.Data.dll
), a zatem w poniższym przykładzie widzisz odniesienie do frameworkassemblies
. Jadąc do CoreClr, muszę się dowiedzieć, w którym pakiecie istnieją te typy. Do tego można użyć strony o nazwie PackageSearch
(zbudowanej przez członka zespołu ASP.NET), w której można wyszukać typ i znaleźć nazwę pakietu. Na podstawie tego znajdziesz pakiet System.Data.SqlClient
. Ponieważ ten pakiet jest zbudowany dla CoreClr, jest częścią sekcji dependencies
w sekcji dnxcore50
.
{
"version": "1.0.0-*",
"description": "Test App",
"dependencies": {
},
"frameworks": {
"dnx451": {
"frameworkAssemblies": {
"System.Data": "4.0.0.0"
}
},
"dnxcore50": {
"dependencies": {
"System.Data.SqlClient": "4.0.0-beta-*"
}
}
}
}
Teraz powiedzmy, że chcemy jeszcze dodać wsparcie dla serializacji i deserializacji json w aplikacji i chcą odwołać Json.Net Nuget pakietu. Pakiet Nuget Json.Net obsługuje zarówno desktop, jak i core clr, a zatem można umieścić go w sekcji dependencies
wspólnej dla obu frameworków.
{
"version": "1.0.0-*",
"description": "Test App",
"dependencies": {
"Newtonsoft.Json": "6.0.6"
},
"frameworks": {
"dnx451": {
"frameworkAssemblies": {
"System.Data": "4.0.0.0"
}
},
"dnxcore50": {
"dependencies": {
"System.Data.SqlClient": "4.0.0-beta-*"
}
}
}
}
Dzięki za link do wyszukiwania paczek, ta strona jest genialna! - http://packagesearch.azurewebsites.net/ – timdougall