Practical TypeScript


Integrating ASP.NET MVC, React and JSX with TypeScript

Creating a form with TypeScript, React and JSX lets you generate the HTML for your form dynamically, at runtime, and on the user's computer. Here's how to integrate a data- driven form into ASP.NET MVC.

Generate TypeScript Classes from C# with TypeScriptSyntaxPaste

When working with TypeScript it's not unusual to need a class that matches an already existing server-side class written in C#. Here's one way to get from C# to TypeScript by doing what you normally do.

Eliminate the Barrier Between JavaScript and HTML (or Anything Else)

The JSX tool lets you describe your page as a set of custom elements that you define in TypeScript classes. Those elements then add to the page whatever text or code makes sense to you.

Features That Will Matter in the Upcoming TypeScript 1.8

There are lots of enhancements waiting for you in TypeScript 1.8, including features that make it easier to move your project to TypeScript, that protect you from errors and that give you even better control over data types.

Creating Type-Safe Structures (and Dictionaries) with Tuples

When classes are more structure than you need, tuples let you specify simple type-safe aggregates of other data types. They'll also let you create a dictionary collection…but it won't be type-safe.

Exploiting TypeScript Arrays

TypeScript doesn't have the rich set of native collection classes that you're used to in the .NET Framework -- instead, it has just arrays and tuples. Fortunately, you can do quite a lot with them.

Exploiting Generics in TypeScript

Generic classes and functions are one way to create flexible, reusable classes and functions. But before you start creating your own generic functions, you should be clear on when they’re your best choice.

Overloading TypeScript Functions

TypeScript has some "interesting" limitations when it comes to overloading functions. But it also offers you some options when you need more flexibility in declaring functions, including both optional parameters and infinite parameter lists.

Implementing Strategy Pattern and Callbacks in TypeScript

The TypeScript datatyping support not only applies to simple variables, it also supports you when doing clever things with functions. Specifically, TypeScript ensures you create reliable code when implementing callback functions.

Managing Functions in TypeScript

Functions in TypeScript aren't handled the way you'd expect, based on any other language (including JavaScript). Fortunately, because of the way TypeScript handles functions, you're protected from a common JavaScript error (in addition to getting better IntelliSense support and compile-time checking, of course).

Integrating Updates, Deletes and Inserts with TypeScript and ASP.NET MVC

Peter returns to his AJAX-enabled ASP.NET MVC application to show how Partial Views and TypeScript work together to simplify delivering a Single-page application.

Simplifying Single-Page Applications with ASP.NET MVC Partial Views

Partial Views can make creating Single-Page Applications dramatically easier by better achieving the goals of the MVC design pattern. Here, in TypeScript, is how to leverage Partial Pages to create an AJAX-enabled application in ASP.NET MVC.

Even Better Data Typing with TypeScript 1.4

In TypeScript 1.4, you get type-safe support even when you may be working with multiple types, better type checking when inferring types and aliases for type definitions.

TypeScript Futures

Now that Google is adopting TypeScript as the development tool for Angular 2, TypeScript 1.5 is going to gain some functionality driven by features in Google AtScript. But there's more in the next version of TypeScript than just AtScript features.

Managing Asynchronous Processes in TypeScript

Promises not only provides a simple, flexible interface for assembling chains of asynchronous operations in client-side code, it also makes it easier for you to manage parallel processing.

Upcoming Events

.NET Insight

Sign up for our newsletter.

I agree to this site's Privacy Policy.