Skip to content

Commit a5c5484

Browse files
committed
Update examples
1 parent 0fd0b84 commit a5c5484

4 files changed

Lines changed: 11 additions & 10 deletions

File tree

DirectusSharp/DirectusClient.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ private DirectusClient(IDirectusIdentity identity, HttpClient httpClient, ILogge
2525
_serializerOptions = new JsonSerializerOptions
2626
{
2727
PropertyNamingPolicy = JsonNamingPolicy.SnakeCaseLower,
28+
RespectNullableAnnotations = true,
29+
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
2830
Converters = { new JsonStringEnumConverter(JsonNamingPolicy.SnakeCaseLower) }
2931
};
3032
}

Examples/DirectusSharp.Examples.Collections/DirectusSharp.Examples.Collections.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
</PropertyGroup>
1010

1111
<ItemGroup>
12-
<ProjectReference Include="..\..\DirectusSharp.Generators\DirectusSharp.Generators.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="true" />
13-
<ProjectReference Include="..\..\DirectusSharp\DirectusSharp.csproj" />
12+
<ProjectReference Include="..\..\DirectusSharp.Generators\DirectusSharp.Generators.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="true"/>
13+
<ProjectReference Include="..\..\DirectusSharp\DirectusSharp.csproj"/>
1414
</ItemGroup>
1515

1616
</Project>
Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
using System.Text.Json.Serialization;
12
using DirectusSharp.Generators.Attributes;
23

34
namespace DirectusSharp.Examples.Collections.Models;
@@ -6,7 +7,8 @@ namespace DirectusSharp.Examples.Collections.Models;
67
public class Movie
78
{
89
// Id must be a property and be called "Id" or "MovieId"
9-
public int MovieId { get; set; } = 0;
10-
10+
[JsonPropertyName("id")] // Directus uses snake_case, so the Id field needs to be called "id". If Id is NULL, Directus will automatically assign one for us
11+
public int? MovieId { get; set; }
12+
1113
public string Title { get; set; } = string.Empty;
1214
}
Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,20 @@
11
using DirectusSharp;
22
using DirectusSharp.Examples.Collections.Models;
3-
using DirectusSharp.Requests.Collections;
43

54
var client = DirectusClient.Create(new HttpClient()
65
{
76
BaseAddress = new Uri("https://directus.io")
87
});
98

10-
var existingMovie = await client.GetMovieAsync(0);
11-
129
var createdMovie = await client.CreateMovieAsync(new Movie()
1310
{
1411
Title = "Lion King"
1512
});
1613

17-
var updatedMovie = await client.UpdateMovieAsync(new Movie()
14+
await client.UpdateMovieAsync(new Movie()
1815
{
19-
MovieId = 4, // The MovieId to update
16+
MovieId = createdMovie!.MovieId,
2017
Title = "Lion King II",
2118
});
2219

23-
await client.DeleteMovieAsync(4, 4);
20+
await client.DeleteMovieAsync(createdMovie.MovieId);

0 commit comments

Comments
 (0)