You are on page 1of 31

DOP321

Migrating .NET frameworks


to the cloud
Robert Zhu
Principal Technical Evangelist
Amazon Web Services

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
• Overview of .NET tooling on AWS

• AWS Elastic Beanstalk intro

• Sample application (mailing list manager)

• Demo

• Step by step

• Troubleshooting
TODO: Related breakouts
[Session ID] [Session Title]
[Session ID] [Session Title]
[Session ID] [Session Title]
[Session ID] [Session Title]
[Session ID] [Session Title]
[Session ID] [Session Title]
.NET Framework
.NET tools on AWS

AWS Toolkit for AWS Toolkit for AWS SDK AWS CLI
Visual Studio Visual Studio Code for .NET

AWS Tools for AWS Tools for AWS SAM for AWS CDK
PowerShell and Azure DevOps Windows for .NET
PowerShell Core
AWS Toolkit for Visual Studio AWS Toolkit for
Visual Studio

• AWS Explorer tree view of AWS resources


• Manage S3 buckets
• Manage IAM users, groups, and policies
• View, create, and delete Amazon DynamoDB
tables
• Manage Amazon SQS queues and SNS topics and
much more
• Right-click publish Web apps to AWS Elastic
Beanstalk & Lambda
• .NET Framework and .NET Core AWS SDK
• Visual Studio project templates for AWS services
• Quick start project templates
AWS Toolkit for Visual Studio AWS Toolkit for
Visual Studio
AWS Elastic Beanstalk

• Easily deploy, monitor, and scale three-tier Web


applications and services
• Infrastructure provisioned and managed by Elastic
Beanstalk — but you maintain complete control
• Preconfigured application containers that
are easily customizable
• Support for: Microsoft NET .NET Core
AWS Elastic Beanstalk

Your code Focus on building your application

HTTP server Elastic Beanstalk configures each


EC2 instance in your environment
Application server
with the components necessary to
run applications for the selected
Language interpreter platform. No more worrying about
Operating system
logging into instances to install and
configure your application stack
Host

Provided by you

Provided and managed by AWS Elastic Beanstalk


https://github.com/robzhu/mailman

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Prerequisites
• Visual Studio 2019 Community Edition
• Extension: AWS Toolkit for Visual Studio 2017 & 2019
• SQL Server Express 2017
• SQL Server Management Studio 2018
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Troubleshooting

Connection string needs a port

https://docs.aws.amazon.com/elasticbeanstalk/
latest/dg/create_deploy_NET.rds.html#dotnet-rds-connect
Troubleshooting

Update-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform -r
Troubleshooting

Use the right SQL client


Troubleshooting

SSMS cannot connect to RDS?

Add inbound rule Ensure connection string is


to security group correct (uses comma)

Make sure public access Use the right


enabled on the DB management client
Troubleshooting

“Cannot implicitly convert from type X to IQueryable”

Make sure you didn’t create an ASP.NET Web forms page with a class
name that conflicts
Source code

https://github.com/robzhu/mailman
Learn DevOps with AWS Training and Certification
Resources created by the experts at AWS to propel your organization and career forward

Take free digital training to learn best practices for developing,


deploying, and maintaining applications

Classroom offerings, like DevOps Engineering on AWS,


feature AWS expert instructors and hands-on activities

Validate expertise with the AWS Certified DevOps Engineer - Professional


or AWS Certified Developer - Associate exams

Visit aws.amazon.com/training/path-developing/

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thank you!
Robert Zhu
robzhu@amazon.com
@rbzhu

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS product and resource icons

Download icons to use in


your presentation here:
https://aws.amazon.com/
architecture/icons/
How to apply
the template
Apply the template to an existing
PowerPoint presentation
1. Save this template to your desktop.

2. Open an existing PowerPoint file that you want to update.

3. Select the Design tab, select the down arrow, scroll down,
and select Browse for Themes.

4. Browse to the template file (.potx) you saved


to your desktop, and select Open.

5. Now, you need to apply the template layout to each slide. On


each slide, right-click the slide thumbnail, and under Layout,
select the template layout you want to apply to the slide.

6. Adjust accordingly to get the slide the way you want it.
Theme colors
The PowerPoint palette for this template has
been built for you and is shown below.
Limit color usage to two of the six accent colors
shown. Do not use different shades of a color. R: 255 R: 240
G: 255 G: 240
B: 255 B: 240

R: 255 R: 136 R: 37
G: 206 G: 206 G: 204
B: 63 B: 184 B: 247
Five-icon layout example

Description of Description of Description of Description of Description of


the concept. the concept. the concept. the concept. the concept.
Table 1

Placeholder Placeholder

Placeholder Placeholder Placeholder

Placeholder Placeholder Placeholder

Placeholder Placeholder Placeholder


Table 2

Placeholder Placeholder

Placeholder Placeholder Placeholder

Placeholder Placeholder Placeholder

Placeholder Placeholder Placeholder


Table 3

Placeholder Placeholder Placeholder

Placeholder Placeholder Placeholder Placeholder

Placeholder Placeholder Placeholder Placeholder

Placeholder Placeholder Placeholder Placeholder


Charts
Chart title
5
4.5
Chart Tools Design 4
Edit Data 3.5
3
2.5
2
1.5
1
0.5
0
Category 1 Category 2
Series 1 Series 2 Series 3

You might also like