Skip to content

Commit

Permalink
Update AutoClone.md (#328)
Browse files Browse the repository at this point in the history
* Update AutoClone.md
Rephrase the comments to make them clearer as to what's going on.
Slightly changed the phrasing

---------

Co-authored-by: Jody Donetti <[email protected]>
Co-authored-by: oasaleh <[email protected]>
  • Loading branch information
oasaleh and jodydonetti authored Dec 13, 2024
1 parent b955c9a commit 1a284c7
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions docs/AutoClone.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,28 +82,28 @@ cache.SetupSerializer(new FusionCacheSystemTextJsonSerializer());
cache.Set("foo", new Person { Name = "John" });

// THIS WILL GET A CLONE
// RETURNS A CLONE OF THE CACHED INSTANCE
var person1 = cache.GetOrDefault<Person>("foo", options => options.SetAutoClone(true));
Console.WriteLine($"person1: {person1.Name}");
Console.WriteLine();

// THIS WILL GET A CLONE, AND CHANGE (ONLY) IT
// RETURNS A CLONE OF THE CACHED INSTANCE: CHANGES APPLIED ONLY THE CLONE, CACHED INSTANCE REMAINS UNCHANGED
var person2 = cache.GetOrDefault<Person>("foo", options => options.SetAutoClone(true));
person2.Name = "Jane";
Console.WriteLine($"person1: {person1.Name}");
Console.WriteLine($"person2: {person2.Name}");
Console.WriteLine();

// THIS WILL GET THE INSTANCE IN THE CACHE, AND CHANGE IT
// RETURNS DIRECT REFERENCE TO THE CACHED INSTANCE: CHANGES APPLIED TO THE CACHED INSTANCE ITSELF
var person3 = cache.GetOrDefault<Person>("foo");
person3.Name = "Jim";
Console.WriteLine($"person1: {person1.Name}");
Console.WriteLine($"person2: {person2.Name}");
Console.WriteLine($"person3: {person3.Name}");
Console.WriteLine();

// THIS WILL GET THE INSTANCE IN THE CACHE AGAIN, AND CHANGE IT
// SO, BOTH person3 AND person4 WILL HAVE THE SAME REFERENCE
// RETURNS DIRECT REFERENCE TO THE CACHED INSTANCE: THE INSTANCE IS THE SAME AS BEFORE
// CHANGES APPLIED TO BOTH person3 AND person4 AS THEY POINT TO THE SAME CACHED INSTANCE
var person4 = cache.GetOrDefault<Person>("foo");
person4.Name = "Joe";

Expand Down

0 comments on commit 1a284c7

Please sign in to comment.