Category Archives: Web Development

ASP.NET Core 2.1 at CMAP August 2018

By Shahed C on August 8, 2018

I presented ASP.NET Core 2.1 at CMAP 2018.1 on Tue August 7, 2018. Here is the presentation material with the slides, links and my contact information. I’ve also included some links to more information to help answer some questions from the audience.

asp-net-logo

Download PPTX or view slideshow below

SlideShare: https://www.slideshare.net/shahedC3000/aspnet-core-21-the-future-of-web-apps-109106486

The new and improved ASP .NET Core 2.1 introduces some great new capabilities, the ability to host on multiple server platforms, and a number of new tools that you will want to get familiar with. Learn about the future of ASP.NET Core MVC, Web API, Razor Web Pages, SignalR, .NET Core Tools and Visual Studio 2017!!

Here are some links that mention information that may be useful to attendees who asked questions about the following:

Daniel Roth’s summary of what’s new in ASP .NET Core 2.1

OWIN in ASP .NET Core

Oracle with EF Core in ASP .NET Core

  • Excerpt: “The Oracle .NET team has announced they are planning to release a first-party provider for EF Core 2.0 approximately in the third quarter of 2018. See their statement of direction for .NET Core and Entity Framework Core for more information. Please direct any questions about this provider, including the release timeline, to the Oracle Community Site.”
  • From Article: Database Providers – EF Core | Microsoft Docs
  • Link: https://docs.microsoft.com/en-us/ef/core/providers/#future-providers

Using IdentityServer (via a Nuget package) in ASP .NET Core web app with Angular:

Video course on ASP .NET Core app with Angular using Identity, via Lynda

p.s. when creating a new Angular web project from VS2017, it appears that the Authentication option is not available, so we’re not able to add Identity support during file creation in an Angular app, the way we do it with ASP .NET MVC/Razor web apps. 

I also ran the following command in the command line, to attempt to create an Angular web app with the –auth flag for Individual authentication, but this is not a valid option.

>dotnet new angular --auth Individual -o AngWebWithAuth

Compare with a regular ASP .NET MVC web app with the — auth flag, which works with no issues.

>dotnet new mvc --auth Individual -o MvcWebWithAuth

The “New Project” dialog in VS2017 has a link to the following page for more info on Identity options for OSS web projects:

ang-auth-options

The list mentions the following options:

 

Build 2018 Videos for .NET Developers

By Shahed C on May 10, 2018

Hope you got a chance to watch some of the Build 2018 keynotes and sessions, either in person or online:

Build2018-logo

If you’re looking for videos on .NET Core, ASP.NET Core and the future of C# and .NET, here’s a handy list, followed by embedded videos from the MS Dev channel on YouTube.

.NET Overview & Roadmap

Entity Framework Core 2.1: Simple, Powerful Data Access for .NET

Modernizing Desktop Apps on Windows 10 with .NET Core 3.0

ASP.NET Core SignalR

What’s new in Web Development with ASP.NET Core 2.1

The future of C#

The Future of .NET on the Desktop

The videos themselves are hosted on YouTube, so here are the same videos, embedded below:

.NET Overview & Roadmap

YouTube link: https://www.youtube.com/watch?v=KAIJ3ezQb3c

Entity Framework Core 2.1: Simple, Powerful Data Access for .NET

YouTube Link: https://www.youtube.com/watch?v=k55kDH_ixrQ

Modernizing Desktop Apps on Windows 10 with .NET Core 3.0

YouTube Link: https://www.youtube.com/watch?v=spgI12ZEBcs

ASP.NET Core SignalR

YouTube Link: https://www.youtube.com/watch?v=u0_vkWYYXRc

What’s new in Web Development with ASP.NET Core 2.1

YouTube Link: https://www.youtube.com/watch?v=SEgyZRau0rU

The future of C#

YouTube Link: https://www.youtube.com/watch?v=QZ0rWLaMZeI

The Future of .NET on the Desktop

YouTube Link: Coming Soon!

HoloLens + Cognitive Services and ASP.NET Core 2.1 Web Apps

By Shahed C on March 27, 2018

I presented the following at multiple events in March 2018. Here is the presentation material with the slides, links and my contact information.

Cloud-Backed Mixed Reality: HoloLens & Azure Cognitive Services

hololens-darkened

Download PPTX or view slideshow below

SlideShare: https://www.slideshare.net/shahedC3000/cloudbacked-mixed-reality-hololens-azure-cognitive-services

The upcoming ASP .NET Core 2.1 introduces some great new capabilities, the ability to host on multiple server platforms, and a number of new tools that you will want to get familiar with. Learn about the future of ASP.NET Core MVC, Web API, Razor Web Pages, .NET Core Tools and Visual Studio 2017!

ASP.NET Core 2.1: The Future of Web Apps

asp-net-logo

Download PPTX or view slideshow below

SlideShare: https://www.slideshare.net/shahedC3000/aspnet-core-21-the-future-of-web-apps

The upcoming ASP .NET Core 2.1 introduces some great new capabilities, the ability to host on multiple server platforms, and a number of new tools that you will want to get familiar with. Learn about the future of ASP.NET Core MVC, Web API, Razor Web Pages, .NET Core Tools and Visual Studio 2017!

 

 

ASP.NET Core 2.0 + VS2017

By Shahed C on August 8, 2017

I presented ASP.NET Core 2.0 and Visual Studio 2017 at DC Metro Devs on Tue August 8, 2017. Here is the presentation material with the slides, links and my contact information.

asp-net-logo

Download PPTX or view slideshow below

SlideShare: https://www.slideshare.net/shahedC3000/aspnet-core-20-the-future-of-web-apps

The all-new ASP .NET Core 2.0 introduces some great new capabilities, the ability to host on multiple server platforms, and a number of new tools that you will want to get familiar with. Learn about the future of ASP.NET Core MVC, Web API, Razor Web Pages, .NET Core Tools and Visual Studio 2017!

 

Azure Functions – Dev Workflow

By Shahed C on May 24, 2017

If you’re looking for new ways to put your code in the cloud, look no further than serverless code deployments with Azure Functions! If you need some tutorials and basic information to get started, check out the following links first, especially the Quick Login page.

Azure Functions

Special Thanks: I’d like to give credit to my awesome colleague Joe Raio, who walked me through these steps during a hackathon project.

Useful Links

The rest of this blog post will focus on how you can develop Azure Functions without being tied to a web browser. You’ll learn how to write the code on your own dev machine, which will enable you to easily commit/push your code into any source code repository.

Step 0: Install Node.js if you haven’t done so already

Download Node.js from the following URL. This includes npm.

Step 1: Install the Azure-CLI npm package

Get more information at the following URL:

In a brand new folder, run the following command from a command line:

> npm i -g azure-functions-cli 
This folder can reside anywhere in your project’s folder structure, to ensure that you can easily check in your code into source control.
UPDATE: There is a newer URL for the Azure Functions CLI, now called Core Tools:

The install command is now:

npm i -g azure-functions-core-tools

Step 2: Create a new Azure Function locally

In the same folder, run the following command to create a new Function App locally:
> func init
Now, run the following command to create a new Function within your Function App.
> func new
Next:
  • Select a language, e.g. C#
  • Select a template, e.g. HttpTriggerWithParameters
  • Enter a name for your new Function, e.g. “MyFunction”, which will create a subfolder using the Function’s name.

Step 3: Observe the folder structure and its files.

Open the folder in your code editor, e.g. Visual Studio Code and take a look at the folder structure. For my C# function, here’s what I can expect in my function’s subfolder:
  • readme.md is a typical “Readme” file, in markdown format, useful for Github repos.
  • run.csx is contains the code for your Azure Function
  • function.json defines the function bindings and other configuration settings

In the Function App’s main folder, the appsettings.js file will be shared by all the functions in this Function App. You can update this settings file by pulling down the actual settings file from your a Function App in your Azure account.

Step 4: Log in to Azure from the command line

Type the following command at the command line:

> func azure login

Follow the onscreen prompts and instructions to log in to your Azure account. If you have two-factor authentication enabled, make sure you have your verification method ready for a quick login process.

Step 5: Get a list of Function Apps in your Azure account

Type the following command at the command line:

> func azure functionapp list

Step 6: Import your App Settings from the cloud

Type the following command at the command line:

> func azure functionapp fetch-app-settings <fn-app-name>

Make sure that you replace the placeholder <fn-app-name> with your own function app’s name. If you have the settings file open locally (e.g. in VS Code), you’ll notice that local file gets updated automatically!

Step 7: Run your function locally (optional)

If you want to run your function locally, type the following command at the command line:

> func host start

This should start the function locally and display the local URL with port number. Use this URL and port number to run it in a web browser and provide parameters via the QueryString. Note that QueryString parameters start with a “?” but subsequent parameters are separated by “&” ampersand characters.

Step 8: Publish back to Azure

Each time you want to publish your Function to Azure, type the following command at the command line:

> func azure functionapp publish <fn-app-name>

Once again, make sure that you replace the placeholder <fn-app-name> with your own function app’s name.

Step 9: Enable CORS for your Function App

If your Function App is hosted in Azure, you will need to enable CORS to ensure that it can be called from JavaScript code with a different origin. For step by step instructions, follow the guide at:

Conclusion

Now you’re ready to use your function from anywhere: directly in a web browser, from a mobile app, web app and more!