Comments (6)
This really is a never ending debate but we chose JSON for a few reasons:
- Easy to read and author without tooling support
- Abundance of parsers available on multiple platforms, plus the one that we already use in most of our frameworks JSON.NET
- We were already investing in a JSON editor for VS (So we could do cool things like use JSON schema to show project.json intellisense and also things like querying for nuget packages)
Aside, why not Xaml 😄
http://forums.asp.net/t/1989814.aspx?Why+Not+Xaml+
from aspnetcore.
I understand the reasoning, but IMO it would be worth it. Your XAML arguments are that JSON is clean and tighter than XAML, but YAML makes JSON look ugly. It seems like project.json files are meant to be hand edited in this new world and to me having a cleaner syntax would be worth some extra effort. Especially since this is a long term architectural change. You know how tight and simple it would be to have a nice project.yaml and config.yaml sitting in your project?? :-) You know you want that. LOL
Maybe the system could support both? I can see where you wouldn't want to make the whole thing pluggable and have a bunch of unknown formats that other editors would need to be able to read and understand, but I would say that you could have a single system that looks for either a project.yaml or project.json file and reads them. Hrmm... now that I think about that... it seems like that would be a bad idea too. I guess it's an all or nothing thing.
from aspnetcore.
JSON has been chosen and I don't see us supporting multiple project formats. The ecosystem needs to be consistent and I'm not a fan of supporting more than one format for the project file (maybe in another 10 years 😉).
Config files are more forgiving and I could see a yaml source but the project format is wayyyy different and has more implications.
BTW "Right Click -> Add Reference" is not dead. We want to have it all:
- The ability to edit the file
- The ability to have tooling like VS completely light up the e2e experience with ui that is familiar to people
from aspnetcore.
Yeah, I agree that supporting more than one format would be a bad idea. Also, I guess if you are a C# dev, then you already live in the world of curly braces. Sigh. :-)
from aspnetcore.
Besides Swagger, I've not used YAML extensively BUT I find it terrible. JSON looks and works better for me, at least under Visual Studio.
from aspnetcore.
I fooled around with ways of using different formats over here https://github.com/aL3891/CustomPackageReferences
from aspnetcore.
Related Issues (20)
- Perf regression: plaintext
- Published size improvement: todosapipublishaot HOT 1
- Blazor WASM Custom javascript dispatching of new Event Gets Triggered Twice HOT 3
- How to get response typed result in minimal api filter HOT 4
- Perf improvement: connectionclosehttps
- Perf regression: json
- Perf improvement: ApiCrudListProducts
- Perf regression: ApiCrudListProducts
- Safe StringUtilities TryGetAsciiString HOT 2
- Perf improvement: connectionclosehttps, connectionclosehttps, fortunes_dapper
- Perf improvement: plaintext
- Blazor WebAssembly Error: Cannot read properties of undefined (reading 'out') after Publishing HOT 21
- Perf improvement: fortunes
- `DatabaseDeveloperPageExceptionFilter` produces bizzare exception if model fails to initialize
- User is authenticated false, when using multiple cookie authentications HOT 1
- Schema get duplicated for every request in open-api HOT 2
- Blazor static SSR SupplyParameterFromForm has issue to bind a Dictionary value which is declared after a nullable property.
- `Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpResponseHeaders` does not validate headers the same way as `Microsoft.AspNetCore.Http.HeaderDictionary` does
- Change wwwroot to Assets in Razor Class Library HOT 5
- Quarantine RazorViews_AreUpdatedOnChange and RazorPages_AreUpdatedOnChange
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aspnetcore.