Esempio n. 1
0
        private JsonTileCardContent GetContentForCurrentSize(JsonTileContent content)
        {
            if (content?.Visual == null)
            {
                return(null);
            }

            switch (TileSize)
            {
            case TileSize.Small:
                return(content.Visual.TileSmall);

            case TileSize.Medium:
                return(content.Visual.TileMedium);

            case TileSize.Wide:
                return(content.Visual.TileWide);

            case TileSize.Large:
                return(content.Visual.TileLarge);

            default:
                return(null);
            }
        }
Esempio n. 2
0
        internal static JsonParseTileResult ParseTile(string json, FeatureSet currFeatureSet)
        {
            JsonTileContent tileContent = null;

            JsonParseTileResult result = new JsonParseTileResult();

            var settings = new JsonSerializerSettings()
            {
                MissingMemberHandling = MissingMemberHandling.Error,
                Error = new EventHandler <ErrorEventArgs>((sender, args) =>
                {
                    HandleError(result.Errors, args);
                })
            };

            try
            {
                tileContent = JsonConvert.DeserializeObject <JsonTileContent>(json, settings);

                CompileProperties(tileContent);
            }
            catch (Exception ex)
            {
                RemoveAllButFirstParseError(result.Errors);
            }

            result.Content = tileContent;

            return(result);
        }