Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update the .NET 8 Blazor Web App project template to show client-server communication over HTTP, with shared models, for Blazor WebAssembly #52474

Closed
1 task done
Bellarmine-Head opened this issue Nov 30, 2023 · 4 comments
Labels
area-blazor Includes: Blazor, Razor Components enhancement This issue represents an ask for new feature or an enhancement to an existing one feature-templates ✔️ Resolution: Duplicate Resolved as a duplicate of another issue Priority:2 Work that is important, but not critical for the release Status: Resolved

Comments

@Bellarmine-Head
Copy link

Bellarmine-Head commented Nov 30, 2023

Is there an existing issue for this?

  • I have searched the existing issues

Is your feature request related to a problem? Please describe the problem.

The .NET 8 Blazor Web App project template is a major step backwards in that it doesn't show - for an ASP.NET-hosted Blazor WebAssembly project (with interactive render mode = WebAssembly, applied globally) - communication between the Client project and the Server project, where the client gets a shared model from the server using JSON-over-HTTP.

(Almost as bad: the Server project isn't identified as such.)

New adopters of Blazor WebAssembly need this very much, and existing users like me need this for when we start a new .NET 8 project.

As it is, the new Client project fakes a data load from the server by waiting for half a second, and then internally generates the data it's going to display. Now, we don't expect a WebAssembly app to do this... we expect it to get data from the server! The project templates used to show this, and very useful it was too. The .NET 8 project template needs to bring this back. We do want new adopters for Blazor WebAssembly, don't we?

Describe the solution you'd like

Please update the .NET 8 Blazor Web App project template to redress this serious omission. Include clearly delineated Server, Client and Shared projects, like we had before. Don't remove the "Server" indicator from the server project name (it doesn't help). Generate the weather forecast data on the server, and pull that data down via a shared model in the client (like we had before).

Additional context

Imagine a new adopter starting Blazor WebAssembly development with .NET 8. The existing books and web resources refer to a Server, Client, Shared solution structure that the new project template doesn't emit. You're not sure which is the server project. You have no idea how to get data from the server to the client. You are confused as to why the client project is itself generating the source data... surely the server should supply this? Why doesn't the template-emitted project show that? The existing resources for .NET 6 and 7 show such a thing, but it doesn't seem possible in .NET 8. Is this obvious way of working not supported in .NET 8? Surely that can't be! Then why does the newly emitted project from the template not show this simple and obvious way of working?

@dotnet-issue-labeler dotnet-issue-labeler bot added the area-blazor Includes: Blazor, Razor Components label Nov 30, 2023
@Bellarmine-Head Bellarmine-Head changed the title Update the .NET 8 Blazor Web App project template to show client-server communication over HTTP, with shared models Update the .NET 8 Blazor Web App project template to show client-server communication over HTTP, with shared models, for Blazor WebAssembly Nov 30, 2023
@javiercn javiercn added this to the .NET 9 Planning milestone Nov 30, 2023
@ghost
Copy link

ghost commented Nov 30, 2023

Thanks for contacting us.

We're moving this issue to the .NET 9 Planning milestone for future evaluation / consideration. We would like to keep this around to collect more feedback, which can help us with prioritizing this work. We will re-evaluate this issue, during our next planning meeting(s).
If we later determine, that the issue has no community involvement, or it's very rare and low-impact issue, we will close it - so that the team can focus on more important and high impact issues.
To learn more about what to expect next and how this issue will be handled you can read more about our triage process here.

@bdongus
Copy link

bdongus commented Dec 30, 2023

I stumbled upon this issue while searching for documentation or examples on how to handle localization with shared resources in InteractiveAuto render mode.
Maybe you could also have a look into this while working on the shared model stuff. At least in Europe localization is a thing.

@ghost
Copy link

ghost commented Jan 3, 2024

Thanks for contacting us.

We're moving this issue to the .NET 9 Planning milestone for future evaluation / consideration. We would like to keep this around to collect more feedback, which can help us with prioritizing this work. We will re-evaluate this issue, during our next planning meeting(s).
If we later determine, that the issue has no community involvement, or it's very rare and low-impact issue, we will close it - so that the team can focus on more important and high impact issues.
To learn more about what to expect next and how this issue will be handled you can read more about our triage process here.

@mkArtakMSFT mkArtakMSFT added enhancement This issue represents an ask for new feature or an enhancement to an existing one Priority:2 Work that is important, but not critical for the release labels Jan 4, 2024
@mkArtakMSFT
Copy link
Member

Closing this as a dupe of #51204

@mkArtakMSFT mkArtakMSFT closed this as not planned Won't fix, can't repro, duplicate, stale Jan 4, 2024
@mkArtakMSFT mkArtakMSFT added the ✔️ Resolution: Duplicate Resolved as a duplicate of another issue label Jan 4, 2024
@ghost ghost added the Status: Resolved label Jan 4, 2024
@ghost ghost locked as resolved and limited conversation to collaborators Feb 7, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-blazor Includes: Blazor, Razor Components enhancement This issue represents an ask for new feature or an enhancement to an existing one feature-templates ✔️ Resolution: Duplicate Resolved as a duplicate of another issue Priority:2 Work that is important, but not critical for the release Status: Resolved
Projects
None yet
Development

No branches or pull requests

5 participants
@bdongus @Bellarmine-Head @javiercn @mkArtakMSFT and others