Skip to main content

BlazorNativePage

Namespace: BlazorNative.Runtime

One page declaration: route (null = mount-by-name only), mount- registry name, and the statically-rooted mount thunk. Build rows through the two factories (BlazorNativePage.Routed<T>(String, String) / BlazorNativePage.Named<T>(String)) — the supported and only VALID construction path. Because this is a readonly struct, C# also grants a public parameterless constructor, so default(BlazorNativePage) and new BlazorNativePage() compile and yield an INVALID row (null BlazorNativePage.Name and null mount thunk); the private constructor cannot prevent that. Such a row is rejected loudly at registration (BlazorNativeApp.RegisterPages(params BlazorNativePage[]) names the offending index) rather than failing silently at first mount — see issue #181.

public readonly struct BlazorNativePage

Inheritance ObjectValueTypeBlazorNativePage
Attributes NullableContextAttribute, NullableAttribute, IsReadOnlyAttribute

Properties

Route

The navigation route, or null for a mount-by-name-only page (a BlazorNativePage.Named<T>(String) row that navigation never targets).

public string? Route { get; }

Property Value

String

Name

The mount-registry name — the key shells mount by and the manifest requires unique.

public string Name { get; }

Property Value

String

Methods

Routed<T>(String, String)

A routed page: reachable by route (navigation / deep links) AND by mount-registry name.

public static BlazorNativePage Routed<T>(string route, string name) where T : IComponent

Type Parameters

T

Parameters

route String

name String

Returns

BlazorNativePage

Named<T>(String)

An unrouted page: reachable by mount-registry name only (the probe shape — shells mount it explicitly, navigation never targets it).

public static BlazorNativePage Named<T>(string name) where T : IComponent

Type Parameters

T

Parameters

name String

Returns

BlazorNativePage