string DownloadPackage(Package package) { var cloudClient = CreateBlobClient(); var packagesBlobContainer = Util.GetPackagesBlobContainer(cloudClient); var packageFileName = Util.GetPackageFileName(package.Id, package.Version); var downloadPath = Path.Combine(_tempFolder, packageFileName); var blob = packagesBlobContainer.GetBlockBlobReference(packageFileName); blob.DownloadToFile(downloadPath); return downloadPath; }
void PopulateFrameworks( Package package, IEnumerable<string> targetFrameworks) { foreach (var targetFramework in targetFrameworks) { using (var sqlConnection = new SqlConnection(ConnectionString)) using (var dbExecutor = new SqlExecutor(sqlConnection)) { sqlConnection.Open(); dbExecutor.Execute( @" INSERT INTO PackageFrameworks (Package_Key, TargetFramework) VALUES (@packageKey, @targetFramework)", new { packageKey = package.Key, targetFramework}); } } }
void AddPackageToCuratedFeed(Package package) { if (!WhatIf) { using (var sqlConnection = new SqlConnection(ConnectionString)) using (var dbExecutor = new SqlExecutor(sqlConnection)) { sqlConnection.Open(); dbExecutor.Execute(@" INSERT INTO CuratedPackages (CuratedFeedKey, PackageRegistrationKey, AutomaticallyCurated, Included) VALUES ((SELECT [Key] FROM CuratedFeeds WHERE Name = 'webmatrix'), (SELECT [Key] FROM PackageRegistrations WHERE Id = @id), @automaticallyCurated, @included)", new { id = package.Id, automaticallyCurated = true, included = true }); } } }
PackageFrameworkReport PopulateFrameworks( Package package, PackageFrameworkReport report) { using (var sqlConnection = new SqlConnection(ConnectionString.ConnectionString)) using (var dbExecutor = new SqlExecutor(sqlConnection)) { sqlConnection.Open(); // Get all target frameworks in the db for this package report.DatabaseFrameworks = new HashSet<string>(dbExecutor.Query<string>(@" SELECT TargetFramework FROM PackageFrameworks WHERE Package_Key = @packageKey", new { packageKey = package.Key })).ToArray(); var adds = report.PackageFrameworks.Except(report.DatabaseFrameworks).Select(targetFramework => new PackageFrameworkOperation() { Type = PackageFrameworkOperationType.Add, Framework = targetFramework, Applied = false, Error = "Not Started" }); var rems = report.DatabaseFrameworks.Except(report.PackageFrameworks).Select(targetFramework => new PackageFrameworkOperation() { Type = PackageFrameworkOperationType.Remove, Framework = targetFramework, Applied = false, Error = "Not Started" }); report.Operations = Enumerable.Concat(adds, rems).ToArray(); } return report; }