diff --git a/MVVM/.vs/MVVM/FileContentIndex/4612740a-1089-41d3-8234-93ec3a549027.vsidx b/MVVM/.vs/MVVM/FileContentIndex/4612740a-1089-41d3-8234-93ec3a549027.vsidx new file mode 100644 index 00000000..79315b1b Binary files /dev/null and b/MVVM/.vs/MVVM/FileContentIndex/4612740a-1089-41d3-8234-93ec3a549027.vsidx differ diff --git a/MVVM/.vs/MVVM/FileContentIndex/5742c2e9-1a2c-4fb0-9c05-34b09033eaa9.vsidx b/MVVM/.vs/MVVM/FileContentIndex/5742c2e9-1a2c-4fb0-9c05-34b09033eaa9.vsidx new file mode 100644 index 00000000..77a708bf Binary files /dev/null and b/MVVM/.vs/MVVM/FileContentIndex/5742c2e9-1a2c-4fb0-9c05-34b09033eaa9.vsidx differ diff --git a/MVVM/.vs/MVVM/FileContentIndex/79b0269f-aa4d-41d5-a4b6-47bef8b08462.vsidx b/MVVM/.vs/MVVM/FileContentIndex/79b0269f-aa4d-41d5-a4b6-47bef8b08462.vsidx deleted file mode 100644 index d9db24e9..00000000 Binary files a/MVVM/.vs/MVVM/FileContentIndex/79b0269f-aa4d-41d5-a4b6-47bef8b08462.vsidx and /dev/null differ diff --git a/MVVM/.vs/MVVM/FileContentIndex/7d577aee-3fb8-4a61-85d0-56ca16da4c36.vsidx b/MVVM/.vs/MVVM/FileContentIndex/7d577aee-3fb8-4a61-85d0-56ca16da4c36.vsidx deleted file mode 100644 index 1b74f6dd..00000000 Binary files a/MVVM/.vs/MVVM/FileContentIndex/7d577aee-3fb8-4a61-85d0-56ca16da4c36.vsidx and /dev/null differ diff --git a/MVVM/.vs/MVVM/FileContentIndex/8b968908-daed-4e4f-8319-b85721346993.vsidx b/MVVM/.vs/MVVM/FileContentIndex/8b968908-daed-4e4f-8319-b85721346993.vsidx new file mode 100644 index 00000000..2d7e9269 Binary files /dev/null and b/MVVM/.vs/MVVM/FileContentIndex/8b968908-daed-4e4f-8319-b85721346993.vsidx differ diff --git a/MVVM/.vs/MVVM/FileContentIndex/a114c179-d573-41e0-b56a-c86a307b2229.vsidx b/MVVM/.vs/MVVM/FileContentIndex/a114c179-d573-41e0-b56a-c86a307b2229.vsidx new file mode 100644 index 00000000..6b1be74e Binary files /dev/null and b/MVVM/.vs/MVVM/FileContentIndex/a114c179-d573-41e0-b56a-c86a307b2229.vsidx differ diff --git a/MVVM/.vs/MVVM/FileContentIndex/b26918b4-025e-490c-8b54-2e0c504f3e70.vsidx b/MVVM/.vs/MVVM/FileContentIndex/b26918b4-025e-490c-8b54-2e0c504f3e70.vsidx deleted file mode 100644 index 53fbe697..00000000 Binary files a/MVVM/.vs/MVVM/FileContentIndex/b26918b4-025e-490c-8b54-2e0c504f3e70.vsidx and /dev/null differ diff --git a/MVVM/.vs/MVVM/FileContentIndex/f85988fa-c15d-4221-b296-fb7ec57c0225.vsidx b/MVVM/.vs/MVVM/FileContentIndex/f85988fa-c15d-4221-b296-fb7ec57c0225.vsidx deleted file mode 100644 index 3d34c077..00000000 Binary files a/MVVM/.vs/MVVM/FileContentIndex/f85988fa-c15d-4221-b296-fb7ec57c0225.vsidx and /dev/null differ diff --git a/MVVM/.vs/MVVM/v17/.suo b/MVVM/.vs/MVVM/v17/.suo index d5b45b7d..cac2403b 100644 Binary files a/MVVM/.vs/MVVM/v17/.suo and b/MVVM/.vs/MVVM/v17/.suo differ diff --git a/MVVM/JsonReader/AuthorJsonReader.cs b/MVVM/JsonReader/AuthorJsonReader.cs new file mode 100644 index 00000000..0ae07dbc --- /dev/null +++ b/MVVM/JsonReader/AuthorJsonReader.cs @@ -0,0 +1,80 @@ +using System; +using LibraryDTO; +using Newtonsoft.Json.Linq; +using System.Globalization; + +namespace JsonReader +{ + public static class AuthorJsonReader + { + public static AuthorDTO ReadAuthor(string json) + { + JObject o = JObject.Parse(json); + string bioTokenAsString = null; + if(o.TryGetValue("bio", out JToken? bioToken)) + { + if(bioToken.Type == JTokenType.String) + { + bioTokenAsString = (string)bioToken; + } + else + { + var bioTokenValue = o["bio"]?["value"]; + bioTokenAsString = (string)bioTokenValue; + } + } + + AuthorDTO author = new AuthorDTO + { + Id = (string)o["key"], + Name = (string)o["name"], + Bio = bioTokenAsString, + BirthDate = o.TryGetValue("birth_date", out JToken? bd) ? ReadDate((string)o["birth_date"]) : null, + DeathDate = o.TryGetValue("death_date", out JToken? dd) ? ReadDate((string)o["death_date"]) : null, + Links = o.TryGetValue("links", out JToken? links) ? links.Select(l => new LinkDTO { Title = (string)l["title"], Url = (string)l["url"] }).ToList() : new List(), + AlternateNames = o.TryGetValue("alternate_names", out JToken? altNames) ? altNames.Select(alt => (string)alt).ToList() : new List() + }; + return author; + } + + public static DateTime? ReadDate(string dateInJson) + { + if(dateInJson == null) return null; + + List> pubDateFormat =new List>() + { + Tuple.Create("d MMMM yyyy", CultureInfo.GetCultureInfo("fr-FR")), + Tuple.Create("d MMMM yyyy", CultureInfo.InvariantCulture), + Tuple.Create("MMM dd, yyyy", CultureInfo.InvariantCulture) + }; + + DateTime? publishDate = null; + foreach(var format in pubDateFormat) + { + if(DateTime.TryParseExact(dateInJson, format.Item1, format.Item2, DateTimeStyles.None, out DateTime readDate)) + { + publishDate = readDate; + break; + } + } + if(!publishDate.HasValue && int.TryParse(dateInJson, out int year)) + { + publishDate = new DateTime(year, 12, 31); + } + return publishDate; + } + + public static Tuple> GetAuthorsByName(string json) + { + JObject o = JObject.Parse(json); + long numFound = (long)o["numFound"]; + var authors = o["docs"].Select(doc => new AuthorDTO + { + Id = $"/authors/{(string)doc["key"]}", + Name = (string)doc["name"], + }); + return Tuple.Create(numFound, authors); + } + } +} + diff --git a/MVVM/JsonReader/BookJsonReader.cs b/MVVM/JsonReader/BookJsonReader.cs new file mode 100644 index 00000000..d7e6259f --- /dev/null +++ b/MVVM/JsonReader/BookJsonReader.cs @@ -0,0 +1,97 @@ +using System.Globalization; +using LibraryDTO; +using Newtonsoft.Json.Linq; + +namespace JsonReader; + +public static class BookJsonReader +{ + static Dictionary languages = new Dictionary() + { + [@"/languages/fre"] = Languages.French, + [@"/languages/eng"] = Languages.English, + ["fre"] = Languages.French, + ["eng"] = Languages.English, + [""] = Languages.Unknown + }; + + public static BookDTO ReadBook(string json) + { + JObject o = JObject.Parse(json); + var l = o["languages"]?.FirstOrDefault(""); + Languages lang = l != null ? languages[(string)l["key"]] : Languages.Unknown; + //List> pubDateFormat =new List>() + //{ + // Tuple.Create("d MMMM yyyy", CultureInfo.GetCultureInfo("fr-FR")), + // Tuple.Create("MMM dd, yyyy", CultureInfo.InvariantCulture) + //}; + + //DateTime? publishDate = null; + //foreach(var format in pubDateFormat) + //{ + // if(DateTime.TryParseExact((string)o["publish_date"], format.Item1, format.Item2, DateTimeStyles.None, out DateTime readDate)) + // { + // publishDate = readDate; + // break; + // } + //} + //if(!publishDate.HasValue) + //{ + // publishDate = new DateTime((int)o["publish_date"], 12, 31); + //} + DateTime? publishDate = AuthorJsonReader.ReadDate((string)o["publish_date"]); + + BookDTO book = new BookDTO + { + Id = (string)o["key"], + Title = (string)o["title"], + Publishers = o["publishers"].Select(p => (string)p).ToList(), + PublishDate = publishDate.GetValueOrDefault(DateTime.Now), + ISBN13 = (string)o["isbn_13"][0], + NbPages = o["number_of_pages"] != null ? (int)o["number_of_pages"] : -1, + Language = lang, + Format = o.TryGetValue("physical_format", out JToken? f) ? (string)f : null, + Works = o["works"].Select(w => new WorkDTO { Id = (string)w["key"] }).ToList(), + Contributors = o.TryGetValue("contributors", out JToken? contr) ? contr.Select(c => new ContributorDTO { Name = (string)c["name"], Role = (string)c["role"] }).ToList() : new List(), + Authors = o["authors"]?.Select(a => new AuthorDTO { Id = (string)a["key"] }).ToList() + }; + if(book.Authors == null) + { + book.Authors = new List(); + } + return book; + } + + public static Tuple> GetBooksByAuthor(string json) + { + JObject o = JObject.Parse(json); + long numFound = (long)o["numFound"]; + var books = o["docs"].Select(doc => new BookDTO + { + Id = (string)(doc["seed"].First()), + Title = (string)doc["title"], + ISBN13 = (string)(doc["isbn"].First()), + Authors = doc["seed"].Where(s => ((string)s).StartsWith("/authors/")) + .Select(s => new AuthorDTO { Id = (string)s }).ToList(), + Language = languages.GetValueOrDefault((string)(doc["language"].First())) + }); + return Tuple.Create(numFound, books); + } + + public static Tuple> GetBooksByTitle(string json) + { + JObject o = JObject.Parse(json); + long numFound = (long)o["numFound"]; + var books = o["docs"].Select(doc => new BookDTO + { + Id = (string)(doc["seed"].First()), + Title = (string)doc["title"], + ISBN13 = (string)(doc["isbn"].First()), + Authors = doc["seed"].Where(s => ((string)s).StartsWith("/authors/")) + .Select(s => new AuthorDTO { Id = (string)s }).ToList(), + Language = languages.GetValueOrDefault((string)(doc["language"].First())) + }); + return Tuple.Create(numFound, books); + } +} + diff --git a/MVVM/JsonReader/JsonReader.csproj b/MVVM/JsonReader/JsonReader.csproj new file mode 100644 index 00000000..cfadb03d --- /dev/null +++ b/MVVM/JsonReader/JsonReader.csproj @@ -0,0 +1,9 @@ + + + + net7.0 + enable + enable + + + diff --git a/MVVM/JsonReader/WorkJsonReader.cs b/MVVM/JsonReader/WorkJsonReader.cs new file mode 100644 index 00000000..387dbbdd --- /dev/null +++ b/MVVM/JsonReader/WorkJsonReader.cs @@ -0,0 +1,55 @@ +using System; +using LibraryDTO; +using Newtonsoft.Json.Linq; +using System.Globalization; + +namespace JsonReader +{ + public static class WorkJsonReader + { + public static WorkDTO ReadWork(string json, string ratingsJson) + { + JObject o = JObject.Parse(json); + JObject r = JObject.Parse(ratingsJson); + var ratingsDto = new RatingsDTO(); + if(r["summary"]["average"].Type != JTokenType.Float) + { + ratingsDto.Average = -1; + ratingsDto.Count = 0; + } + else + { + ratingsDto.Average = (float)r["summary"]["average"]; + ratingsDto.Count = (int)r["summary"]["count"]; + } + + string description = null; + if(o.TryGetValue("description", out JToken? descr)) + { + if(descr.Type == JTokenType.String) + { + description = (string)descr; + } + else + { + if (descr["value"].Type == JTokenType.String) + { + description = (string)descr["value"]; + } + } + } + + WorkDTO work = new WorkDTO + { + Id = (string)o["key"], + Title = (string)o["title"], + Authors = o.TryGetValue("authors", out JToken? authors) ? authors.Select(a => new AuthorDTO { Id = (string)a["author"]["key"] }).ToList() : new List(), + Description = description, + Subjects = o.TryGetValue("subjects", out JToken? subjects) ? subjects.Select(s => (string)s).ToList() : new List(), + Ratings = ratingsDto + }; + return work; + } + } +} + diff --git a/MVVM/JsonReader/obj/Debug/net7.0/.NETCoreApp,Version=v7.0.AssemblyAttributes.cs b/MVVM/JsonReader/obj/Debug/net7.0/.NETCoreApp,Version=v7.0.AssemblyAttributes.cs new file mode 100644 index 00000000..4257f4bc --- /dev/null +++ b/MVVM/JsonReader/obj/Debug/net7.0/.NETCoreApp,Version=v7.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v7.0", FrameworkDisplayName = ".NET 7.0")] diff --git a/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.AssemblyInfo.cs b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.AssemblyInfo.cs new file mode 100644 index 00000000..fec13a26 --- /dev/null +++ b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// Ce code a été généré par un outil. +// Version du runtime :4.0.30319.42000 +// +// Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si +// le code est régénéré. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("JsonReader")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("JsonReader")] +[assembly: System.Reflection.AssemblyTitleAttribute("JsonReader")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Généré par la classe MSBuild WriteCodeFragment. + diff --git a/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.AssemblyInfoInputs.cache b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.AssemblyInfoInputs.cache new file mode 100644 index 00000000..a7841c73 --- /dev/null +++ b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +75ab89cdc89b77767489249fd0a3a85dbf8a1541 diff --git a/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.GeneratedMSBuildEditorConfig.editorconfig b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 00000000..4424f3f5 --- /dev/null +++ b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,11 @@ +is_global = true +build_property.TargetFramework = net7.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = JsonReader +build_property.ProjectDir = C:\Home\Cours\Projet\MVVM\my\PocketBook_MVVM\MVVM\JsonReader\ diff --git a/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.GlobalUsings.g.cs b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.GlobalUsings.g.cs new file mode 100644 index 00000000..8578f3d0 --- /dev/null +++ b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.assets.cache b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.assets.cache new file mode 100644 index 00000000..64d6839e Binary files /dev/null and b/MVVM/JsonReader/obj/Debug/net7.0/JsonReader.assets.cache differ diff --git a/MVVM/JsonReader/obj/JsonReader.csproj.nuget.dgspec.json b/MVVM/JsonReader/obj/JsonReader.csproj.nuget.dgspec.json new file mode 100644 index 00000000..449d24ff --- /dev/null +++ b/MVVM/JsonReader/obj/JsonReader.csproj.nuget.dgspec.json @@ -0,0 +1,68 @@ +{ + "format": 1, + "restore": { + "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\JsonReader.csproj": {} + }, + "projects": { + "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\JsonReader.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\JsonReader.csproj", + "projectName": "JsonReader", + "projectPath": "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\JsonReader.csproj", + "packagesPath": "C:\\Users\\enzoj\\.nuget\\packages\\", + "outputPath": "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\enzoj\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net7.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net7.0": { + "targetAlias": "net7.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + } + }, + "frameworks": { + "net7.0": { + "targetAlias": "net7.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.400\\RuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/MVVM/JsonReader/obj/JsonReader.csproj.nuget.g.props b/MVVM/JsonReader/obj/JsonReader.csproj.nuget.g.props new file mode 100644 index 00000000..4689bc3a --- /dev/null +++ b/MVVM/JsonReader/obj/JsonReader.csproj.nuget.g.props @@ -0,0 +1,16 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\enzoj\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.7.0 + + + + + + \ No newline at end of file diff --git a/MVVM/JsonReader/obj/JsonReader.csproj.nuget.g.targets b/MVVM/JsonReader/obj/JsonReader.csproj.nuget.g.targets new file mode 100644 index 00000000..3dc06ef3 --- /dev/null +++ b/MVVM/JsonReader/obj/JsonReader.csproj.nuget.g.targets @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/MVVM/JsonReader/obj/project.assets.json b/MVVM/JsonReader/obj/project.assets.json new file mode 100644 index 00000000..eba079df --- /dev/null +++ b/MVVM/JsonReader/obj/project.assets.json @@ -0,0 +1,74 @@ +{ + "version": 3, + "targets": { + "net7.0": {} + }, + "libraries": {}, + "projectFileDependencyGroups": { + "net7.0": [] + }, + "packageFolders": { + "C:\\Users\\enzoj\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\JsonReader.csproj", + "projectName": "JsonReader", + "projectPath": "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\JsonReader.csproj", + "packagesPath": "C:\\Users\\enzoj\\.nuget\\packages\\", + "outputPath": "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\enzoj\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net7.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net7.0": { + "targetAlias": "net7.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + } + }, + "frameworks": { + "net7.0": { + "targetAlias": "net7.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.400\\RuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/MVVM/JsonReader/obj/project.nuget.cache b/MVVM/JsonReader/obj/project.nuget.cache new file mode 100644 index 00000000..0404af3e --- /dev/null +++ b/MVVM/JsonReader/obj/project.nuget.cache @@ -0,0 +1,8 @@ +{ + "version": 2, + "dgSpecHash": "/OrUvUGJdLLZZ18d0j31TG1V37NSHSskWDKFBXj9J5mTMNdJLfDBxqqTHUXHkeocmCpjLlwD86zFcAP48QcP2A==", + "success": true, + "projectFilePath": "C:\\Home\\Cours\\Projet\\MVVM\\my\\PocketBook_MVVM\\MVVM\\JsonReader\\JsonReader.csproj", + "expectedPackageFiles": [], + "logs": [] +} \ No newline at end of file diff --git a/MVVM/MVVM.sln b/MVVM/MVVM.sln index 835d5945..6129df13 100644 --- a/MVVM/MVVM.sln +++ b/MVVM/MVVM.sln @@ -9,6 +9,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Wrapper", "Wrapper\Wrapper. EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Model", "Model\Model.csproj", "{F5CDC244-6079-436E-BBA5-FEE9C7D018A6}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Stub", "Stub\Stub.csproj", "{C12D08F4-D2A5-4151-886B-6E291F310D92}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StubbedDTO", "StubbedDTO\StubbedDTO.csproj", "{0DE51794-39F3-4DCE-9896-959FD2CAC910}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JsonReader", "JsonReader\JsonReader.csproj", "{8090EA92-E977-4E0A-9B64-F9C8BDCDEAD1}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -29,6 +35,18 @@ Global {F5CDC244-6079-436E-BBA5-FEE9C7D018A6}.Debug|Any CPU.Build.0 = Debug|Any CPU {F5CDC244-6079-436E-BBA5-FEE9C7D018A6}.Release|Any CPU.ActiveCfg = Release|Any CPU {F5CDC244-6079-436E-BBA5-FEE9C7D018A6}.Release|Any CPU.Build.0 = Release|Any CPU + {C12D08F4-D2A5-4151-886B-6E291F310D92}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C12D08F4-D2A5-4151-886B-6E291F310D92}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C12D08F4-D2A5-4151-886B-6E291F310D92}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C12D08F4-D2A5-4151-886B-6E291F310D92}.Release|Any CPU.Build.0 = Release|Any CPU + {0DE51794-39F3-4DCE-9896-959FD2CAC910}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0DE51794-39F3-4DCE-9896-959FD2CAC910}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0DE51794-39F3-4DCE-9896-959FD2CAC910}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0DE51794-39F3-4DCE-9896-959FD2CAC910}.Release|Any CPU.Build.0 = Release|Any CPU + {8090EA92-E977-4E0A-9B64-F9C8BDCDEAD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8090EA92-E977-4E0A-9B64-F9C8BDCDEAD1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8090EA92-E977-4E0A-9B64-F9C8BDCDEAD1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8090EA92-E977-4E0A-9B64-F9C8BDCDEAD1}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/MVVM/MVVM/Pages/MyLibraryPage.xaml b/MVVM/MVVM/Pages/MyLibraryPage.xaml index 74188418..27789565 100644 --- a/MVVM/MVVM/Pages/MyLibraryPage.xaml +++ b/MVVM/MVVM/Pages/MyLibraryPage.xaml @@ -1,7 +1,9 @@ + x:Class="MVVM.Pages.MyLibraryPage" + xmlns:local="clr-namespace:MVVM.Pages" + x:DataType="local:MyLibraryPage"> @@ -37,7 +39,7 @@ - + @@ -54,9 +56,6 @@