I used to be studying Gabby’s weblog submit concerning the new TypeScript/JavaScript challenge expertise in Visible Studio 2022. It’s best to learn the docs on JavaScript and TypeScript in Visible Studio 2022.
If you happen to’re used to ASP.NET apps when you consider apps which are JavaScript heavy, “entrance finish apps” or TypeScript centered, it may be complicated as to “the place does .NET slot in?”
That you must contemplate the tasks of your numerous tasks or subsystems and the a number of completely legitimate methods you possibly can construct a site or net app. Let’s contemplate only a few:
- An ASP.NET Internet app that renders HTML on the server however makes use of TS/JS
- This may occasionally have a Internet API, Razor Pages, with or with out the MVC sample.
- You perhaps have simply added JavaScript through <script> tags
- Perhaps you added a script minimizer/minifier job
- Could be complicated as a result of it may well really feel like your app must ‘construct each the shopper and the server’ from one challenge
- A principally JavaScript/TypeScript frontend app the place the HTML could possibly be served from any net server (node, kestrel, static net apps, nginx, and so on)
- This app could use Vue or React or Angular but it surely’s not an “ASP.NET app”
- It calls backend Internet APIs which may be served by ASP.NET, Azure Features, third occasion REST APIs, or all the above
- This situation has typically been complicated for ASP.NET builders who could get confused about accountability. Who builds what, the place do issues find yourself, how do I construct and deploy this?
VS2022 brings JavaScript and TypeScript assist into VS with a full JavaScript Language Service based mostly on TS. It supplies a TypeScript NuGet Bundle so you possibly can construct your complete app with MSBuild and VS will do the best factor.
NEW: Beginning in Visible Studio 2022, there’s a new JavaScript/TypeScript challenge sort (.esproj) that lets you create standalone Angular, React, and Vue tasks in Visible Studio.
The .esproj idea is nice for folk conversant in Visible Studio as we all know {that a} Answer accommodates a number of Tasks. Visible Studio manages information for a single utility in a Challenge. The challenge consists of supply code, assets, and configuration information. On this case we are able to have a .csproj for a backend Internet API and an .esproj that makes use of a shopper aspect template like Angular, React, or Vue.
Factor is, traditionally when Visible Studio supported Angular, React, or Vue, it is templates have been old-fashioned and never up to date sufficient. VS2022 makes use of the native CLIs for these entrance ends, fixing that drawback with Angular CLI, Create React App, and Vue CLI.
If I’m in VS and go “File New Challenge” there are Standalone templates that remedy Instance 2 above. I will decide JavaScript React.
Then I will click on “Add integration for Empty ASP.NET Internet API. It will give me a frontend with javascript able to name a ASP.NET Internet API backend. I will observe alongside right here.
It then makes use of the React CLI to make the entrance finish, which once more, is cool because it’s no matter model I need it to be.
Then I will add my ASP.NET Internet API backend to the identical answer, so now I’ve an esproj and a csproj like this
Now I’ve a pleasant clear two challenge system – on this case extra JavaScript centered than .NET centered. This one makes use of npm to startup the challenge utilizing their net improvement server and proxyMiddleware to proxy localhost:3000 calls over to the ASP.NET Internet API challenge.
Here’s a React app served by npm calling over to the Climate service served from Kestrel on ASP.NET.

That is inverted than most ASP.NET People are used to, and that is OK. This exhibits me that Visible Studio 2022 can assist both improvement type, use the CLI that’s put in for no matter Frontend Framework, and permit me to decide on what net server and net browser (through Launch.json) I need.
If you wish to flip it, and put ASP.NET Core as the first after which herald some TypeScript/JavaScript, observe this tutorial as a result of that is additionally doable!
Sponsor: Make login Auth0’s drawback. Not yours. Present the handy login options your clients need, like social login, multi-factor authentication, single sign-on, passwordless, and extra. Get began totally free.
About Scott
Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, marketing consultant, father, diabetic, and Microsoft worker. He’s a failed stand-up comedian, a cornrower, and a e-book writer.