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
Rename Razor Components back to server-side Blazor #8931
Comments
Is this an approved decision? Can we still vote? Personally i am against changing the name. I think Razor Components is a better name. :( |
@xclud It's an open forum, so feedback is always welcome 😃 We will still refer to the component model as Razor components (i.e. a .razor file will still be a Razor component), but when talking about the application model we are finding it very cumbersome to have different names. There's already quite a bit of momentum behind the name Blazor so we'd like to stick with it. Names are of course subjective - no matter what name we pick not everyone will be happy, but Blazor seems to have served us pretty well so far. |
I think this is a good move. There has been no end of confusion about the relationship between Razor Components and Blazor. To the point that people have thought they are different frameworks, not just different ways of rendering. Plus, in my personal opinion, Blazor is a cool name. |
As someone who very frequently talks to people about Blazor. Razor Components has been nothing but confusion. It's confusing in terms of: when is a Blazor app a Razor Components app, Razor Components as it relates to [Razor Pages & Razor Class Libraries], and tripping over one's self when saying Razor/Blazor. It also makes writing about Blazor difficult, SEO difficult, I could go on. |
Sanity prevails! Thanks so much for this change. |
What happeneds with the .razor file extensions, since razor pages are still .cshtml and components are .razor it might be beneficial to call it .blazor? Or call the razor pages also .razor instead of .cshtml? |
We're planning to keep the .razor extension for components. Components are based on Razor syntax, but components are handled differently by the Razor compiler, so they need a different file extension. |
What about the blazor hosted template? For the client side model it is the easiest way for:
So I hope that the hosted template will still be present. |
I also love this rename back to just "Blazor". ATM talking with people about Blazor and Razor components is just plain confusion. |
Blazor is a trchnology with (at least) two hosting model. So, I like Blazor! |
One name to rule them all. One Blazor with two different hosting models is definitely better. It saves from a lot of confusion down the road. |
I welcome this change! The new (or old) naming is far less confusing I feel. |
I agree with @vertonghenb that the file extension should also be renamed to |
Short comment: I agree with changing name back from Razor Components to Server-side Blazor. Long answer: I believe that both client-side and server-side "components" should have same name, whatever it is: Blazor, Razor Components, ASP.NET Core Components. For example React and React Native are much more different technologies and yet they share the same name. Advantage of Blazor name:
Advantage of Razor Components name:
|
And regarding extension it depends how Razor compilation is extensible. If for example in future there will be static generated Razore pages also with I think this should be perfectly achievable. I don't know what is current status to support code-behind for Razor components. However, if there is then code-behind defines if component is inherited from ComponentBase or anything else. And this may determine how However, if future Razor objects would need to have different extension, then |
I welcome this change a lot! The name “Razor components” was always a bit confusing because the expectation was that this was a purely server side thing, like everything else Razor does is. So the expectation was that Razor components are, kind of like user controls in WPF, a way to compose custom components using a Razor syntax instead of code (like tag helpers allow). By renaming this, that confusion gets removed, and we actually do have the chance to eventually come up with server-side composable Razor components at some point. As for the |
I know @poke and @duracellko both mentioned the term blazor components in passing, but I actually like that as a name. What about Blazor Components instead of Blazor (server-side)? Oh. and I think |
@myty I think conceptually, the components were always “Blazor components” (i.e. you create components with Blazor). “Blazor (server-side)” and “Blazor (client-side)” are the two different hosting models in which you can consume and run the same (I think?) Blazor components. So you would use both “Blazor components” to describe that you are creating a component, and “server-side Blazor” to describe how you are executing the Blazor components. |
The fact that it was always Blazor components was what sold me on the name. Tell it like it is and it sounds cool too. :) ...but, I also see the confusion between server-side and client-side. It's hard to tell the story without specifically calling them out. |
Yes! Finally :) Blazor is the true name. |
do you even blaze? |
Yes |
Blazor client and server-side really sounds good. |
As others have said, there are compelling reasons to consider This is the rationale up to this point that I could find:
I feel my view may be too simplistic:
|
There are a few reasons why we'd prefer to keep the .razor extension:
|
@danroth27 What disturb me is that Razor syntax is in both .cshtml and .razor files. I think there will be confusion which extension is for which Razor Page/Component/MVC view. Other two points are fair enough. |
What bothers me about this argument is that a These things won’t work for purely server-side and server-rendered “Razor components”, which could be a hypothetical thing in the future (since for example render fragments would work pretty nicely on the server too). So we’re locking the file extension |
@danroth27 Almost everybody (including me) is wanting it Thank you. |
As @danroth27 mentioned coordinating with multiple teams, I can think of, VS Team, Razor team team, it might be a big chunk of work which each team has differing priorities on tasks. I can see the Say if possible in the future you could use native That's a theoretical example though, at that point you could say that it uses Razor Components but isn't on a Blazor context but rather on a native context like React Native where things can differ like event bindings being different, some Blazor specific attributes not applicable etc... I see Blazor as a framework that uses Razor Components ( |
Thanks everyone for your feedback on this issue. The Razor Components renaming back to server-side Blazor is done! We've decided to leave the .razor extension as is for the reasons listed above. We've had a mixture of feedback on this decision. While we appreciate the desire to Blazor all the things, we think the current extension is adequate and we prefer to focus our efforts on getting Blazor ready to ship instead of churning the file extension. Given this decision, I'm going to go ahead and close this issue. |
Please rename the label feature-Components to feature-Blazor, too. |
Dears, I am using vs 2019, I have installed Blazor last version, I have core 3 preview 4, I have create a Blazor project, all pages now are with .razor extension instead of .cshtml, I ran the application, but giving me Loading... without moving to Index.razor page, any help please. Thanks in advance. |
@ImadMichaelAyoub Do you have any error messages in the console? Are you running client-side or server-side Blazor? I would suggest this is probably not the best place for this discussion. It would probably be best to join the Blazor Gitter channel (https://gitter.im/aspnet/Blazor) and we can help you there. |
Thanks for the reply. I'm using client-side Blazor. It seems application runs index.html file in wwwroot and not moving to index.cshtml in pages folder. |
I'm new to Razor and Blazor. It's confusing when searching online for solution, you get tons of razor or old stuff which does not apply anymore, adding more confusion. I vote highly to change change to new name (even to .blazor) so we can search and get the latest. |
Does this mean - "It's planned to keep same .razor extension.. but, it needs a different extension than .razor, even if its not planned" ? "Great Technology comes with a great name confusion" |
We initially introduced the Blazor server-side hosting model in Blazor 0.5.0 and then later decided to ship it in .NET Core 3.0. To differentiate client-side and server-side Blazor we decided to give the server-side model a new name: Razor Components. However this has turned out to cause confusion.
To address this confusion we are going to switch back to referring to the application model as Blazor with different hosting models. Blazor apps can be hosted on the server on .NET Core or on the client with WebAssembly. Server-side Blazor support will ship with .NET Core 3.0 and client-side support will come later as soon as the WebAssembly support is ready.
Implementation details:
services.AddRazorComponents()
->services.AddServerSideBlazor()
routes.MapComponentHub<TComponent>()
->routes.MapBlazorHub<TComponent>()
The text was updated successfully, but these errors were encountered: