Skip to content

docs: resolve CS1574 unresolved crefs and CS1571 duplicate param in TodoApp.BlazorWasm.Client TodoService#2

Closed
adrianhall wants to merge 1 commit into
mainfrom
issues/550
Closed

docs: resolve CS1574 unresolved crefs and CS1571 duplicate param in TodoApp.BlazorWasm.Client TodoService#2
adrianhall wants to merge 1 commit into
mainfrom
issues/550

Conversation

@adrianhall

Copy link
Copy Markdown
Owner

Summary

Fixes the CS1574 unresolved XML doc cref warnings and the CS1571 duplicate <param> warning reported in CommunityToolkit#550, surfaced when building TodoApp.BlazorWasm.Client with -p:GenerateDocumentationFile=true.

Traced each cref against the actual CommunityToolkit.Datasync.Client source rather than guessing:

  • ValidationException / ConcurrencyException don't exist in CommunityToolkit.Datasync.Client, and are never actually thrown by AddAsync/ReplaceAsync today — a rejected/invalid write surfaces as ConflictException<T> (409/412) or EntityDoesNotExistException (404, since DatasyncServiceOptions.ThrowIfMissing defaults to true), thrown by the client library itself. Updated the exception docs on CreateTodoItemAsync/UpdateTodoItemAsync/DeleteTodoItemAsync in both ITodoService.cs and TodoService.cs to reference these real types instead.
  • DatasyncServiceClient{T}.AddAsync(T) / .ReplaceAsync(T) don't exist with those signatures — the code actually calls the IDatasyncServiceClientExtensions.AddAsync/ReplaceAsync extension methods (2-arg: entity + CancellationToken), so the crefs now target those, mirroring the fix pattern already used for EntityFrameworkQueryableExtensions.AnyAsync in docs: fix CS1574 XML cref for AnyAsync CommunityToolkit/Datasync#553.
  • DatasyncServiceClient{T}.RemoveAsync(string, DatasyncServiceOptions) was just missing its CancellationToken parameter.
  • Merged the duplicate <param name="title"> tag on CreateTodoItemAsync in both files into a single tag positioned after <summary>.

Verification

  • dotnet build samples/todoapp-blazor-wasm/TodoApp.BlazorWasm.Server/TodoApp.BlazorWasm.Server.csproj -p:GenerateDocumentationFile=true — 0 errors, 0 CS1574/CS1571 warnings (previously 6). One pre-existing, unrelated WASM native-linking warning remains.
  • dotnet restore / dotnet build on Datasync.Toolkit.sln — succeeds, 0 warnings, 0 errors.
  • dotnet test tests/CommunityToolkit.Datasync.Client.Test — 1432/1432 passed (the test project most relevant to the types referenced in this change).
  • Full Build Samples GitHub Actions workflow dispatched against this branch — all 17 jobs + aggregation check passed: https://github.com/adrianhall/CommunityToolkit-Datasync/actions/runs/29145912239

Full solution dotnet test was not run end-to-end: several test projects (Cosmos, MongoDB, SQL Server, LiteDb) require live database services not available in this environment, and are unrelated to this docs-only sample change (no files under src/ or tests/ were touched).

Fixes CommunityToolkit#550

…odoApp.BlazorWasm.Client TodoService

Fixes unresolved XML doc <see cref=.../> tags and a duplicate <param>
tag surfaced when building TodoApp.BlazorWasm.Client with
-p:GenerateDocumentationFile=true:

- ValidationException and ConcurrencyException don't exist in
  CommunityToolkit.Datasync.Client; the client actually throws
  ConflictException<T> on version/duplicate conflicts and
  EntityDoesNotExistException when an item is missing. Exception docs
  on CreateTodoItemAsync/UpdateTodoItemAsync/DeleteTodoItemAsync are
  updated to reference these real types.
- AddAsync(T)/ReplaceAsync(T) crefs pointed at nonexistent overloads
  on DatasyncServiceClient<T>; the code actually calls the
  IDatasyncServiceClientExtensions.AddAsync/ReplaceAsync extension
  methods, so the crefs now target those.
- RemoveAsync(string, DatasyncServiceOptions) was missing its
  CancellationToken parameter in the cref.
- Merged the duplicate <param name="title"> tag on
  CreateTodoItemAsync in both files into a single tag.

Fixes CommunityToolkit#550
@adrianhall

Copy link
Copy Markdown
Owner Author

Closing: this PR was opened against the wrong repo (my fork's own main, adrianhall/CommunityToolkit-Datasync) instead of the upstream CommunityToolkit/Datasync repo. Re-opening correctly from the same branch.

@adrianhall adrianhall closed this Jul 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TodoApp.BlazorWasm.Client: CS1574 unresolved XML doc crefs for ValidationException/ConcurrencyException/generic-method overloads

1 participant