コード例 #1
0
        public static void SyncFromFacebook()
        {
            var beers = LoadFromFacebook();

            //MutateForScreenshots(beers);

            var cbc = new Cbc();

            cbc.Beers.AddRange(beers.OrderBy(X => X.BreweryName).ThenBy(X => X.BeerName));
            //cbc.Note = "This is a beta beer list. Pull to update.";

            Publish(cbc);
        }
コード例 #2
0
        private static void SaveCsv(Cbc data)
        {
            var beers = data.Beers
                        .OrderBy(X => X.SessionNumber)
                        .ThenBy(X => X.BreweryName)
                        .ThenBy(X => X.BeerName);

            using (var output = File.CreateText(@"c:\temp\cbc-2016-fb.csv"))
            {
                foreach (var beer in beers)
                {
                    output.WriteLine(String.Format("\"{0}\",\"{1}\",\"{2}\",\"{3}\",\"{4}\", \"{5}\"", beer.SessionName, beer.BreweryName, beer.BeerName, beer.StyleName, beer.ABV, Guid.NewGuid().ToString()));
                }

                output.Flush();
            }
        }
コード例 #3
0
        private static void Publish(Cbc cbc)
        {
            var account   = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("AZURE_BLOB_STORAGE_CONNECTION_STRING"));
            var client    = account.CreateCloudBlobClient();
            var container = client.GetContainerReference("data-prod");

            CloudBlockBlob blob = container.GetBlockBlobReference("beer-5.0.0-dev.json");

            using (var ms = new MemoryStream())
            {
                var writer = new JsonTextWriter(new StreamWriter(ms));
                JsonSerializer.Create().Serialize(writer, cbc);
                writer.Flush();
                ms.Seek(0, SeekOrigin.Begin);
                blob.UploadFromStream(ms);
            }
        }
コード例 #4
0
        private static void SaveJson(Cbc data)
        {
            var outputPath = @"c:\temp\cbc-2016.js";

            File.WriteAllText(outputPath, JsonConvert.SerializeObject(data));
        }