Lyo.Tag
3.0.0
dotnet add package Lyo.Tag --version 3.0.0
NuGet\Install-Package Lyo.Tag -Version 3.0.0
<PackageReference Include="Lyo.Tag" Version="3.0.0" />
<PackageVersion Include="Lyo.Tag" Version="3.0.0" />
<PackageReference Include="Lyo.Tag" />
paket add Lyo.Tag --version 3.0.0
#r "nuget: Lyo.Tag, 3.0.0"
#:package Lyo.Tag@3.0.0
#addin nuget:?package=Lyo.Tag&version=3.0.0
#tool nuget:?package=Lyo.Tag&version=3.0.0
Lyo.Tag
Contracts for hanging tags on entities. The target is an EntityRef, and the person or system that applied the tag is an optional second EntityRef. A feature can attach tags
without tying them through a foreign key.
ITagStore
AddTagAsync(EntityRef forEntity, string tag, string tagType = "tag", EntityRef? fromEntity = null, string? slug = null, CancellationToken ct = default)writes a tag. The same(forEntity, tag, tagType, slug)tuple is a no-op if it already exists. A null or whitespaceslugbecomes empty. LeavefromEntityoff and the well-known system actor is recorded.RemoveTagAsync(EntityRef forEntity, string tag, string tagType = "tag", string? slug = null, CancellationToken ct = default)drops the matching assignment. Theslugyou pass has to match what was stored, including empty when nothing was stored.GetTagsForEntityAsync(EntityRef forEntity, string? tagType = null, CancellationToken ct = default)lists everyTagRecordon that entity. PasstagTypeto narrow the result.GetEntitiesWithTagAsync(string tag, string? forEntityType = null, string? tagType = null, CancellationToken ct = default)lists every entity that carries that tag value. Entity type and tag type filters are optional.GetAllTagsForEntityTypeAsync(string forEntityType, string? tagType = null, CancellationToken ct = default)lists the distinct tag values used on any entity of that type.
GetTopTagsAsync(int take, TagSort sortBy = TagSort.Count, SortDirection direction = SortDirection.Desc, string? forEntityType = null, string? tagType = null, string? name = null, string? text = null, int skip = 0, CancellationToken ct = default)
returns each tag name and tag type with how many active assignments use that pair. take must be at least 1. skip defaults to 0 and must not be negative, so
GetTopTagsAsync(10, skip: 10) is the next page of 10. Sort by count or name, ascending or descending. Defaults are count, descending, so GetTopTagsAsync(10) is the top 10 by
usage. Name ascending is GetTopTagsAsync(10, TagSort.Name, SortDirection.Asc). Count sorts break ties by name, then tag type. Name sorts break ties by tag type. The tie-break
does not follow the requested direction. Pass forEntityType, tagType, or name to count only that slice. Pass text to keep rows whose name or tag type contains that text,
ignoring case, so GetTopTagsAsync(10, text: "alp") can return both alpha and alpine. A null or whitespace tagType, name, or text applies no filter. Soft-deleted rows
are excluded.
RemoveAllTagsForEntityAsync(EntityRef forEntity, CancellationToken ct = default)soft-deletes every tag assignment on that entity.
TagCount
Name. Display text for the tag, such as"urgent".TagType. Namespace discriminator grouped withName. Default assignments use"tag".Count. Active assignment rows for that name and tag type. Soft-deleted rows are not included.
TagSort
Count. Order by how many active assignments use the tag.Name. Order by the tag name.
TagRecord
Name. Display text for the tag, such as"urgent".TagType. Namespace discriminator. Default is"tag". Other usual values include"category"and"label".Slug. Optional slug suitable for URLs. Empty if none was given.SubjectRef/ActorRef. Projected asEntityRef.
Dependencies
Generated from ProjectReference / PackageReference (same model as docs/Lyo.ProjectGraph.html).
Lyo.Common.Core(direct, lyo)Lyo.EntityReference.Models(direct, lyo)Lyo.Exceptions(transitive, lyo)Microsoft.Bcl.AsyncInterfaces10.0.5(transitive, microsoft, netstandard2.0)System.Memory4.6.3(transitive, microsoft, netstandard2.0)System.Text.Json10.0.5(transitive, microsoft, netstandard2.0)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Lyo.Common.Core (>= 3.0.0)
- Lyo.EntityReference.Models (>= 3.0.0)
-
net10.0
- Lyo.Common.Core (>= 3.0.0)
- Lyo.EntityReference.Models (>= 3.0.0)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Lyo.Tag:
| Package | Downloads |
|---|---|
|
Lyo.Tag.Postgres
PostgreSQL implementation of Lyo.Tag using Entity Framework Core. Uses EntityRef for entity references. Tags entities with string values (e.g. "urgent", "follow-up"). |
|
|
Lyo.HomeInventory.Api
HTTP API surface for Lyo HomeInventory: categories, locations, items, stock, attachments, notes, and tags. |
|
|
Lyo.Recipe.Api
HTTP API surface for Lyo Recipe: categories, ingredients, recipes, lines, steps, attachments, notes, and tags. |
|
|
Lyo.Recipe.Client
HTTP client for extra Recipe routes: ingredient lines, steps, notes, tags, and attachment upload. |
|
|
Lyo.Recipe.Web.Components
Blazor / MudBlazor workbench for household recipes: recipes, ingredients, categories, lines, steps, notes, tags, and FileStorage attachments. |
GitHub repositories
This package is not used by any popular GitHub repositories.