Skip to content

Blazor doesn't create component and create element instead #8826

@max-meng1

Description

@max-meng1

Is there an existing issue for this?

  • I have searched the existing issues

Describe the bug

I just came across this weird issue, that I havn't seen this before.

<div class="lv-media-viewer-wrapper">
    <VideoMediaViewer Media="Media"
                      Size="Size"
                      OnNext="OnNext"
                      Loading="OnViewerLoading"
                      Loaded="OnViewerLoaded"
                      Stopped="Stopped"
                      AutoPlay="@AutoPlay"
                      StatusChanged="StatusChanged" />
</div>

The above Razor content doesn't render properly, and generates a plain HTML tag instead:

<div class="lv-media-viewer-wrapper">
<videomediaviewer media="Media" size="Size" onnext="OnNext" loading="OnViewerLoading" loaded="OnViewerLoaded" stopped="Stopped" statuschanged="StatusChanged"></videomediaviewer>
</div>

VideoMediaViewer, and it's parent component are in same namespace. I also checked compiled code, other components are
recognized (using OpenComponent)

TypeInference.CreateCascadingValue_0<MediaPlayer>(__builder2, 10, 11, this, 12, true, 13, new RenderFragment(this, (RenderTreeBuilder __builder3) => {
                        __builder3.OpenElement(14, "div");
                        __builder3.OpenComponent<LvPanel>(15);
                        __builder3.AddAttribute(16, "Collapsed", RuntimeHelpers.TypeCheck<bool>(true));
                        __builder3.AddAttribute(17, "ChildContent", new RenderFragment(this, (RenderTreeBuilder __builder4) => {
                            __builder4.OpenComponent<RecordingMetaData>(18);
                            __builder4.AddAttribute(19, "Recording", RuntimeHelpers.TypeCheck<Recording>(this.Store.Recording));
                            __builder4.AddAttribute(20, "RecordingDetails", RuntimeHelpers.TypeCheck<RecordingDetails>(this.Store.RecordingDetails));
                            __builder4.CloseComponent();
                        }));
                        __builder3.CloseComponent();
                        __builder3.AddMarkupContent(21, "\r\n                    ");
                        __builder3.OpenElement(22, "div");
                        __builder3.AddAttribute(23, "class", "lv-media-viewer-wrapper");
                        __builder3.OpenElement(24, "VideoMediaViewer");
                        __builder3.AddAttribute(25, "Media", "Media");
                        __builder3.AddAttribute(26, "Size", "Size");
                        __builder3.AddAttribute(27, "OnNext", "OnNext");
                        __builder3.AddAttribute(28, "Loading", "OnViewerLoading");
                        __builder3.AddAttribute(29, "Loaded", "OnViewerLoaded");
                        __builder3.AddAttribute(30, "Stopped", "Stopped");
                        __builder3.AddAttribute(31, "AutoPlay", this.AutoPlay);
                        __builder3.AddAttribute(32, "StatusChanged", "StatusChanged");
                        __builder3.CloseElement();
                        __builder3.CloseElement();
                        __builder3.CloseElement();
                    }));

Expected Behavior

VideoMediaViewer should be rendered as a Blazor component

Steps To Reproduce

No response

Exceptions (if any)

No response

.NET Version

7.0

Anything else?

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions