Contents tagged with ASP.NET

  • Released Today: Visual Studio 2015, ASP.NET 4.6, ASP.NET 5 & EF 7 Previews

    Today is a big day with major release announcements for Visual Studio 2015, Visual Studio 2013 Update 5, and .NET Framework 4.6. All these releases have been covered in great detail on Soma’s Blog, Visual Studio Blog, and .NET Blog

    Join us online for the Visual Studio 2015 Release Event, where you can see Soma, Brian Harry, Scott Hanselman, and many other demo new Visual Studio 2015 features and technologies. This year, in a new segment called “In The Code”, we share how a team of Microsoft engineers created a real app in 3 days. There will be opportunities along the way to interact in live Q&A with the team on subjects such as Agile development, web and cloud development, cross-platform mobile dev and much more. 

    In this post I’d like to specifically talk about some of the ground we have covered in ASP.NET and Entity Framework.  In this release of Visual Studio, we are releasing ASP.NET 4.6, updating our Visual Studio Web Development Tools, and updating the latest beta release of our new ASP.NET 5 framework.  Below are details on just a few of the great updates available today:

    ASP.NET Tooling Improvements

    Today’s VS 2015 release delivers some great updates for web development.  Here are just a few of the updates we are shipping in this release:

    JSON Editor

    JSON has become a first class experience in Visual Studio 2015 and we are now giving you a great editor to allow you to maintain your JSON content.  With support for JSON Schema validation, intellisense, and support for SchemaStore.org writing and producing JSON content has never been as easy.  We’ve also added intellisense support for bower.json and package.json files for bower and npm package manager use.

    image

    HTML Editor Updates

    Our HTML editor received a lot of attention in this update.  We wanted to deliver an editor that kept up with HTML 5 standards and provided rich support for popular new frameworks and libraries.  We previously shipped the bootstrap responsive web framework with our ASP.NET templates, and we are now providing intellisense for their classes with an indicator icon to show that they are bootstrap CSS classes.

    image

     

    This helps you keep clear the classes that you wrote in your project, like the page-inner class above, and the bootstrap classes marked with the B icon.

    We are also keeping up with support for the emerging web components standard with the import link for the web components that markup imports.

     image

    We are also providing intellisense for AngularJS directives and attributes with an appropriate Angular icon so you know you’re triggering AngularJS functionality

     image

    JavaScript Editor Improvements

    With the VS 2015 release we are introducing support for AngularJS structures including controllers, services, factories, directives and animations.  There is also support for the new EcmaScript 6 features such as classes, arrow functions, and template strings. We are also bringing a navigation bar to the editor to help you navigate between the major elements of your JavaScript.  With JSDoc support to deliver intellisense, JavaScript development gets easier.

     image

    ReactJS Editor Support

    We spent some time with the folks at Facebook to make sure that we delivered first class capabilities for developers using their ReactJS framework.  With appropriate syntax highlighting and intellisense for React methods, developers should be very comfortable building React applications with the new Visual Studio:

     image

    Support for JavaScript package managers like Grunt and Gulp and Task Runners

    JavaScript and modern web development techniques are the new recommended way to build client-side code for your web application.  We support these tools and programming techniques with our new Task Runner Explorer that executes grunt and gulp task runners.  You can open this tool window with the Ctrl+Alt+Backspace hotkey combination.

     image

    Execute any of the tasks defined in your gruntfile.js or gulpfile.js by right-clicking on the task name in the left panel and choosing “Run” from the context menu that appears.  You can even use this context menu to attach grunt or gulp tasks to project build events in Visual Studio like “After Build” as shown in the figure above.  Every time the .NET objects in your web project are completed compiling, the ‘build’ task will be executed from the gruntfile.js

    Combined with the intellisense support for JavaScript and JSON editors, we think that developers wanting to use grunt and gulp tasks will really enjoy this new Visual Studio experience.  You can add grunt and gulp tasks with the newly integrated npm package manager capabilities.  When you create a package.json file in your web project, we will install and upgrade local copies of all packages referenced.  Not only do we deliver syntax highlighting and intellisense for package.json terms, we also provide package name and version lookup against the npmjs.org gallery.

     image

    The bower package manager is also supported with great intellisense, syntax highlighting and the same package name and version support in the bower.json file that we provide for package.json.

     image

    These improvements in managing and writing JavaScript configuration files and executing grunt or gulp tasks brings a new level of functionality to Visual Studio 2015 that we think web developers will really enjoy.

  • Announcing the new Azure App Service

    In a mobile first, cloud first world, every business needs to deliver great mobile and web experiences that engage and connect with their customers, and which enable their employees to be even more productive.  These apps need to work with any device, and to be able to consume and integrate with data anywhere.

    I'm excited to announce the release of our new Azure App Service today - which provides a powerful new offering to deliver these solutions.  Azure App Service is an integrated service that enables you to create web and mobile apps for any platform or device, easily integrate with SaaS solutions (Office 365, Dynamics CRM, Salesforce, Twilio, etc), easily connect with on-premises applications (SAP, Oracle, Siebel, etc), and easily automate businesses processes while meeting stringent security, reliability, and scalability needs.

    Azure App Service

    Azure App Service includes the Web App + Mobile App capabilities that we previously delivered separately (as Azure Websites + Azure Mobile Services).  It also includes powerful new Logic/Workflow App and API App capabilities that we are introducing today for the very first time - along with built-in connectors that make it super easy to build logic workflows that integrate with dozens of popular SaaS and on-premises applications (Office 365, SalesForce, Dynamics, OneDrive, Box, DropBox, Twilio, Twitter, Facebook, Marketo, and more). 

    All of these features can be used together at one low price.  In fact, the new Azure App Service pricing is exactly the same price as our previous Azure Websites offering.  If you are familiar with our Websites service you now get all of the features it previously supported, plus additional new mobile support, plus additional new workflow support, plus additional new connectors to dozens of SaaS and on-premises solutions at no extra charge

    Web + Mobile + Logic + API Apps

    Azure App Service enables you to easily create Web + Mobile + Logic + API Apps:

    image

    You can run any number of these app types within a single Azure App Service deployment.  Your apps are automatically managed by Azure App Service and run in managed VMs isolated from other customers (meaning you don't have to worry about your app running in the same VM as another customer).  You can use the built-in AutoScaling support within Azure App Service to automatically increase and decrease the number of VMs that your apps use based on the actual resource consumption of them. 

    This provides an incredibly cost-effective way to build and run highly scalable apps that provide both Web and Mobile experiences, and which contain automated business processes that integrate with a wide variety of apps and data sources.

    Below are additional details on the different app types supported by Azure App Service.  Azure App Service is generally available starting today for Web apps, with the Mobile, Logic and API app types available in public preview:

    Web Apps

    The Web App support within Azure App Service includes 100% of the capabilities previously supported by Azure Websites.  This includes:

    • Support for .NET, Node.js, Java, PHP, and Python code
    • Built-in AutoScale support (automatically scale up/down based on real-world load)
    • Integrated Visual Studio publishing as well as FTP publishing
    • Continuous Integration/Deployment support with Visual Studio Online, GitHub, and BitBucket
    • Virtual networking support and hybrid connections to on-premises networks and databases
    • Staged deployment and test in production support
    • WebJob support for long running background tasks

    Customers who have previously deployed an app using the Azure Website service will notice today that they these apps are now called "Web Apps" within the Azure management portals.  You can continue to run these apps exactly as before - or optionally now also add mobile + logic + API app support to your solution as well without having to pay anything more.

    Mobile Apps

    The Mobile App support within Azure App Service provides the core capabilities we previously delivered using Azure Mobile Services.  It also includes several new enhancements that we are introducing today including:

    • Built-in AutoScale support (automatically scale up/down based on real-world load)
    • Traffic Manager support (geographically scale your apps around the world)
    • Continuous Integration/Deployment support with Visual Studio Online, GitHub, and BitBucket
    • Virtual networking support and hybrid connections to on-premises databases
    • Staged deployment and test in production support
    • WebJob support for long running background tasks

    Because we have an integrated App Service offering, you can now run both Web and Mobile Apps using a single Azure App Service deployment.  This allows you to avoid having to pay for a separate web and mobile backend - and instead optionally pool your resources to save even more money.

    Logic Apps

    The Logic App support within Azure App Services is brand new and enables you to automate workflows and business processes.  For example, you could configure a workflow that automatically runs every time your app calls an API, or saves data within a database, or on a timer (e.g. once a minute) - and within your workflows you can do tasks like create/retrieve a record in Dynamics CRM or Salesforce, send an email or SMS message to a sales-rep to follow up on, post a message on Facebook or Twitter or Yammer, schedule a meeting/reminder in Office 365, etc. 

    Constructing such workflows is now super easy with Azure App Services.  You can define a workflow either declaratively using a JSON file (which you can check-in as source code) or using the new Logic/Workflow designer introduced today within the Azure Portal.  For example, below I've used the new Logic designer to configure an automatically recurring workflow that runs every minute, and which searches Twitter for tweets about Azure, and then automatically send SMS messages (using Twilio) to have employees follow-up on them:

    image 

    Creating the above workflow is super easy and takes only a minute or so to do using the new Logic App designer.  Once saved it will automatically run within the same VMs/Infrastructure that the Web Apps and Mobile Apps you've built using Azure App Service use as well.  This means you don't have to deploy or pay for anything extra - if you deploy a Web or Mobile App on Azure you can now do all of the above workflow + integration scenarios at no extra cost

    Azure App Service today includes support for the following built-in connectors that you can use to construct and automate your Logic App workflows:

    image

    Combined the above connectors provide a super powerful way to build and orchestrate tasks that run and scale within your apps.  You can now build much richer web and mobile apps using it.

    Watch this Azure Friday video about Logic Apps with Scott Hanselman and Josh Twist to learn more about how to use it.

    API Apps

    The API Apps support within Azure App Service provides additional support that enables you to easily create, consume and call APIs - both APIs you create (using a framework like ASP.NET Web API or the equivalent in other languages) as well as APIs from other SaaS and cloud providers.

    API Apps enable simple access control and credential management within your applications, as well as automatic SDK generation support that enables you to easily expose and integrate APIs across a wide-variety of languages.  You can optionally integrate these APIs with Logic Apps.

    Getting Started

    Getting started with Azure App Service is easy.  Simply sign-into the Azure Preview Portal and click the "New" button in the bottom left of the screen.  Select the "Web + Mobile" sub-menu and you can now create Web Apps, Mobile Apps, Logic Apps, and API Apps:

    image 

  • Introducing ASP.NET 5

    The first preview release of ASP.NET 1.0 came out almost 15 years ago.  Since then millions of developers have used it to build and run great web applications, and over the years we have added and evolved many, many capabilities to it. 

    I'm excited today to post about a new release of ASP.NET that we are working on that we are calling ASP.NET 5.  This new release is one of the most significant architectural updates we've done to ASP.NET.  As part of this release we are making ASP.NET leaner, more modular, cross-platform, and cloud optimized.  The ASP.NET 5 preview is now available as a preview release, and you can start using it today by downloading the latest CTP of Visual Studio 2015 which we just made available.

    ASP.NET 5 is an open source web framework for building modern web applications that can be developed and run on Windows, Linux and the Mac. It includes the MVC 6 framework, which now combines the features of MVC and Web API into a single web programming framework.  ASP.NET 5 will also be the basis for SignalR 3 - enabling you to add real time functionality to cloud connected applications. ASP.NET 5 is built on the .NET Core runtime, but it can also be run on the full .NET Framework for maximum compatibility.

    With ASP.NET 5 we are making a number of architectural changes that makes the core web framework much leaner (it no longer requires System.Web.dll) and more modular (almost all features are now implemented as NuGet modules - allowing you to optimize your app to have just what you need).  With ASP.NET 5 you gain the following foundational improvements:

    • Build and run cross-platform ASP.NET apps on Windows, Mac and Linux
    • Built on .NET Core, which supports true side-by-side app versioning
    • New tooling that simplifies modern Web development
    • Single aligned web stack for Web UI and Web APIs
    • Cloud-ready environment-based configuration
    • Integrated support for creating and using NuGet packages
    • Built-in support for dependency injection
    • Ability to host on IIS or self-host in your own process

    The end result is an ASP.NET that you'll feel very familiar with, and which is also now even more tuned for modern web development.

  • Azure: New DocumentDB NoSQL Service, New Search Service, New SQL AlwaysOn VM Template, and more

    Today we released a major set of updates to Microsoft Azure. Today’s updates include:

    • DocumentDB: Preview of a New NoSQL Document Service for Azure
    • Search: Preview of a New Search-as-a-Service offering for Azure
    • Virtual Machines: Portal support for SQL Server AlwaysOn + community-driven VMs
    • Web Sites: Support for Web Jobs and Web Site processes in the Preview Portal
    • Azure Insights: General Availability of Microsoft Azure Monitoring Services Management Library
    • API Management: Support for API Management REST APIs

    All of these improvements are now available to use immediately (note that some features are still in preview).  Below are more details about them:

    DocumentDB: Announcing a New NoSQL Document Service for Azure

    I’m excited to announce the preview of our new DocumentDB service - a NoSQL document database service designed for scalable and high performance modern applications.  DocumentDB is delivered as a fully managed service (meaning you don’t have to manage any infrastructure or VMs yourself) with an enterprise grade SLA.

    As a NoSQL store, DocumentDB is truly schema-free. It allows you to store and query any JSON document, regardless of schema. The service provides built-in automatic indexing support – which means you can write JSON documents to the store and immediately query them using a familiar document oriented SQL query grammar. You can optionally extend the query grammar to perform service side evaluation of user defined functions (UDFs) written in server-side JavaScript as well. 

    DocumentDB is designed to linearly scale to meet the needs of your application. The DocumentDB service is purchased in capacity units, each offering a reservation of high performance storage and dedicated performance throughput. Capacity units can be easily added or removed via the Azure portal or REST based management API based on your scale needs. This allows you to elastically scale databases in fine grained increments with predictable performance and no application downtime simply by increasing or decreasing capacity units.

    Over the last year, we have used DocumentDB internally within Microsoft for several high-profile services.  We now have DocumentDB databases that are each 100s of TBs in size, each processing millions of complex DocumentDB queries per day, with predictable performance of low single digit ms latency.  DocumentDB provides a great way to scale applications and solutions like this to an incredible size.

    DocumentDB also enables you to tune performance further by customizing the index policies and consistency levels you want for a particular application or scenario, making it an incredibly flexible and powerful data service for your applications.   For queries and read operations, DocumentDB offers four distinct consistency levels - Strong, Bounded Staleness, Session, and Eventual. These consistency levels allow you to make sound tradeoffs between consistency and performance. Each consistency level is backed by a predictable performance level ensuring you can achieve reliable results for your application.

    DocumentDB has made a significant bet on ubiquitous formats like JSON, HTTP and REST – which makes it easy to start taking advantage of from any Web or Mobile applications.  With today’s release we are also distributing .NET, Node.js, JavaScript and Python SDKs.  The service can also be accessed through RESTful HTTP interfaces and is simple to manage through the Azure preview portal.

    Provisioning a DocumentDB account

    To get started with DocumentDB you provision a new database account. To do this, use the new Azure Preview Portal (http://portal.azure.com), click the Azure gallery and select the Data, storage, cache + backup category, and locate the DocumentDB gallery item.

    image

    Once you select the DocumentDB item, choose the Create command to bring up the Create blade for it.

  • Free ebook: Building Cloud Apps with Microsoft Azure

    9780735695658f

    Last week MS Press published a free ebook based on the Building Real-World Apps using Azure talks I gave at the NDC and TechEd conferences.  The talks + book walks through a patterns-based approach to building real world cloud solutions, and help make it easier to understand how to be successful with cloud development.

    Videos of the Talks

    You can watch a video recording of the talks I gave here:

  • Azure: ExpressRoute Dedicated Networking, Web Site Backup Restore, Mobile Services .NET support, Hadoop 2.2, and more

    This morning we released a massive amount of enhancements to Windows Azure.  Today’s new capabilities and announcements include:

    • ExpressRoute: Dedicated, private, high-throughput network connectivity with on-premises
    • Web Sites: Backup and Restore Support
    • Mobile Services: .NET support, Notification Hub Integration, PhoneGap support
    • HDInsight: Hadoop 2.2 support
    • Management: Co-admin limit increased from 10->200 users
    • Monitoring: Service Outage Notifications Integrated within Management Portal
    • Virtual Machines: VM Agent and Background Information Support
    • Active Directory: More SaaS apps, more reports, self-service group management
    • BizTalk Services: EDIFACT protocol support, Service Bus Integration, Backup and Restore

    All of these improvements are now available to use immediately (note that some features are still in preview).  Below are more details about them:

  • Windows Azure: Staging Publishing Support for Web Sites, Monitoring Improvements, Hyper-V Recovery Manager GA, and PCI Compliance

    This morning we released another great set of enhancements to Windows Azure.  Today’s new capabilities and announcements include:

    • Web Sites: Staged Publishing Support and Always On Support
    • Monitoring Improvements: Web Sites + SQL Database Alerts
    • Hyper-V Recovery Manager: General Availability Release
    • Mobile Services: Support for SenchaTouch
    • PCI Compliance: Windows Azure Now Validated for PCI DSS Compliance

    All of these improvements are now available to use immediately (note that some features are still in preview).  Below are more details about them:

  • Presentations I’m doing in Dublin and London Dec 2nd->5th

    I’ll be in Ireland and the UK next week presenting at several events.  Below are details on the talks I’ll be doing if you want to come along and hear them:

    Dublin: Monday Dec 2nd

    I’m doing two separate free events in Dublin on Monday:

    • Windows Azure and the Cloud at Mon 1-3pm.  This event is free to attend, and I’ll be doing a two hour keynote/overview session on Windows Azure as part of it.  This will be a great talk to attend if you are new to Windows Azure and are interested in learning more about what you can do with it.  Later sessions at the event also cover VS 2013, building iOS/Android apps with C# using Xamarin, and F# with Data and the Cloud.  Lean more here and sign-up for free.
    • Building Real World Application using Windows Azure at Mon 6:00-9:00pm.  This event is also free to attend, and during it I’ll walkthrough building a real world application using Windows Azure and discuss patterns and best practice techniques for building real world apps along the way.  The content is intermediate/advanced level (my goal is to melt your brain by the end) but doesn’t assume prior knowledge of Windows Azure.  Learn more here and sign-up for free.

    There is no content overlap between the two talks – so feel free to attend both if you want to!

  • Windows Azure: General Availability Release of BizTalk Services, Traffic Manager, Azure AD App Access + Xamarin support for Mobile Services

    This morning we released another great set of enhancements to Windows Azure.  Today’s new capabilities include:

    • BizTalk Services: General Availability Release
    • Traffic Manager: General Availability Release
    • Active Directory: General Availability Release of Application Access Support
    • Mobile Services: Active Directory Support, Xamarin support for iOS and Android with C#, Optimistic concurrency
    • Notification Hubs: Price Reduction + Debug Send Support
    • Web Sites: Diagnostics Support for Automatic Logging to Blob Storage
    • Storage: Support for alerting based on storage metrics
    • Monitoring: Preview release of Windows Azure Monitoring Service Library

    All of these improvements are now available to use immediately (note that some features are still in preview).  Below are more details about them:

  • Windows Azure: Import/Export Hard Drives, VM ACLs, Web Sockets, Remote Debugging, Continuous Delivery, New Relic, Billing Alerts and More

    Two weeks ago we released a giant set of improvements to Windows Azure, as well as a significant update of the Windows Azure SDK.

    This morning we released another massive set of enhancements to Windows Azure.  Today’s new capabilities include:

    • Storage: Import/Export Hard Disk Drives to your Storage Accounts
    • HDInsight: General Availability of our Hadoop Service in the cloud
    • Virtual Machines: New VM Gallery, ACL support for VIPs
    • Web Sites: WebSocket and Remote Debugging Support
    • Notification Hubs: Segmented customer push notification support with tag expressions
    • TFS & GIT: Continuous Delivery Support for Web Sites + Cloud Services
    • Developer Analytics: New Relic support for Web Sites + Mobile Services
    • Service Bus: Support for partitioned queues and topics
    • Billing: New Billing Alert Service that sends emails notifications when your bill hits a threshold you define

    All of these improvements are now available to use immediately (note that some features are still in preview).  Below are more details about them.