Programming Microsoft Azure

Share Embed Donate


Short Description

Descripción: Programming Microsoft Azure...

Description

Subhasish Ghosh | Vice President, 8K Miles Software Services, Inc. @nerdometer

Developing Applications Better

[email protected]

WISDOM Series Microsoft, Hyderabad

+91-9916043731

70-532: Developing Microsoft Azure Solutions

Developing Applications Better

[email protected]

+91-9916043731

NOT

Architecting Microsoft Azure Solutions

Developing Applications Better

[email protected]

+91-9916043731

Microsoft Azure Fundamentals Exam 70-532: Developing Microsoft Azure Solutions Preparation Module

Developing Applications Better

[email protected]

+91-9916043731

[email protected] [email protected] [email protected] https://www.linkedin.com/in/sghosh2011 Developing Applications Better

[email protected]

+91-9916043731

Day1 •

Azure AD & SSO

VM, Cloud Services & Web Sites Analysis



Lab 2



Deployment, Configuration & Monitoring



Data Storage Options





Web Sites & AutoScale – Demo



Blobs, Disks, Tables & Queues





Cloud Services –



Serialized Object Graphs in JSON (DocumentDB)





async in .NET 4.5



Lab 3



Code Review & 3 Best Practices



Data Partitioning Strategies



Introduction



WPI & WebMatrix3 - Demo





One ASP.NET Philosophy



Microsoft Open Technologies

VM Depot - Demo



OWIN Katana Project – Examples & Demo



Lab 1



Cloud Dev Best Practices





Day2



Web Sites –

Developing, Deploying & Monitoring

Developing Applications Better

In-depth Blog Storage & Code Examples

Day3 •

Queuing on Microsoft Azure



Using DCS

Lab 4



Use Cases & Demo



Lab 7

Azure Service Bus Queues



Understanding Failures on Cloud



PowerShell Cmdlets

Azure Queues & Service Bus Queues – Compared



Types & Scope



Lab 8



Staged Deployment & GitHub Integration

Caching on Azure: Understanding Redis - Tutorial



Building Telemetry



Microsoft Azure Redis



Lab 6



Lab 9



Lab 5



DevOps on Cloud Principles



ASSESSMENT

[email protected]

+91-9916043731

Laboratories 1,2,3,4,5,6,7,8,9 1. SETUP: Install Microsoft Azure SDK for .NET (vs2013) - 2.5, Install Visual Studio Express 2013 for Web with Microsoft Azure SDK – 2.5, Microsoft Azure PowerShell, Open Microsoft Azure Subscription TRIAL 30-day account. Create a VM, stop & stop-deallocate using Azure PowerShell. 2. SECURITY: Creating an ASP.NET MVC application and then adding Single Sign-On (SSO) to your application using Azure Active Directory (AAD). 3. DOCUMENTDB: Creating a DocumentDB account; leveraging DocumentDB in a VS2013 application.

4. CLOUD SERVICES: Creating a Cloud Services (Web & Worker Roles) application. Publishing to Microsoft Azure associated with a Microsoft Azure Storage Account; Configure Auto-scaling. 5. AZURE REDIS CACHE: Creating and configuring Azure Redis Cache, configuring cache clients, adding and removing objects from the cache, and storing ASP.NET session state in the cache. 6. MONITORING CODE: Creating a New Relic account, integrating it with an Azure Web Sites application and then publishing to Azure; and checking out the tool. 7. SOURCE CONTROL: Using Git in VS2013, Exploring features (branches, merging, comments etc.). 8. DEVOPS AUTOMATION: Using Microsoft Azure PowerShell – installation, cmdlets, Azure Subscription details and Runbooks Introduction. 9. STAGED PUBLISHING: Staged Publishing feature of Azure Web Sites along with GitHub Integration. Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

We are gonna talk about…

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Microsoft Open Technologies

http://msopentech.com/

Developing Applications Better

[email protected]

+91-9916043731

https://vmdepot.msopentech.com/

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

http://katanaproject.codeplex.com/

Microsoft via Katana is building a set of components around hosting abstraction for your applications. That hosting abstraction is 'OWIN'. OWIN is a specification. Not a code // library // framework.

Developing Applications Better

[email protected]

+91-9916043731

Why OWIN? 2 Key Motivations: - System.Web.dll (ASP.NET runtime) 12+ years old web framework - Was built with WebForms in mind - Not flexible enough to support modern frameworks: Web API, SignalR, NancyFX - Always execute lots of legacy ASP.NET-specific code that has no more use

Developing Applications Better

[email protected]

+91-9916043731

Why OWIN? 2 Key Motivations: - Node.js Envy

Developing Applications Better

[email protected]

+91-9916043731

Katana Architecture

http://msopentech.com/

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Quick Demo

PM> Install-Package Microsoft.Owin.Host.SystemWeb PM> Install-Package Microsoft.Owin.Diagnostics PM> Install-Package Microsoft.Owin.Host.HttpListener Developing Applications Better

[email protected]

+91-9916043731

http://msopentech.com/

Developing Applications Better

[email protected]

+91-9916043731

app.UseWelcomePage();

Developing Applications Better

[email protected]

+91-9916043731

Project Katana

http://msopentech.com/

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Cloud Services - Azure’s original PaaS solution You create the code, define the configuration, and deploy it to Azure. Azure sets up the compute environment, runs your code then monitors and maintains it for you. No need to get your hands dirty with the Virtual Machine configurations unless you need to. Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Role (“Template”)

Configuration OS Family (Server 2008, 2012) VM Size Role Type (Web, Worker) Endpoints Settings Etc… Code

Developing Applications Better

Keep at least two instances running for improved fault tolerance and SLA. Load balanced Endpoints are automatically maintained.

Instance *

[email protected]

Running VM, configured, with code deployed, endpoints opened, etc.

+91-9916043731

Add more instances for load balancing and improved fault tolerance when demand is high.

Role (“Template”)

Developing Applications Better

Keep at least two instances running for improved fault tolerance and SLA. Load balanced Endpoints are automatically maintained.

Scale Up

Configuration OS Family (Server 2008, 2012) VM Size Role Type (Web, Worker) Endpoints Settings Etc… Code

Instance *

[email protected]

Running VM, configured, with code deployed, endpoints opened, etc.

+91-9916043731

Role (“Template”)

Developing Applications Better

Keep at least two instances running for improved fault tolerance and SLA. Load balanced Endpoints are automatically maintained.

Scale Down

Configuration OS Family (Server 2008, 2012) VM Size Role Type (Web, Worker) Endpoints Settings Etc… Code

Remove un-needed instances to save money when demand is low

Instance *

[email protected]

Running VM, configured, with code deployed, endpoints opened, etc.

+91-9916043731

Workloads for Cloud Services •

VM is explicitly IaaS, Cloud Services is explicitly PaaS, Web Sites is explicitly hosting.



Cloud Services gives you administrative access to your application's VMs. Web Sites do not provide this. This lets you install arbitrary software that your application needs, something that's not possible with Web Sites.



N-tier stateless applications is perfect for Cloud Services. Offers both web roles and worker roles (requirement for separate VMs for their business logic).



Cloud Services provides separate staging and production environments, making application updates somewhat smoother than Web Sites.



Cloud Services lets you use networking technologies such as Azure Virtual Network and Azure Connect to hook on-premises computers to Cloud Services applications. No such thing on Web Sites.



Cloud Services lets you use Remote Desktop to connect directly to an application's VMs. No such thing on Web Sites. Developing Applications Better

[email protected]

+91-9916043731

1

3

2

Legacy App Support

4

Web Sites

Developing Applications Better Cloud Services

[email protected]

Agility

Ease

Legacy App Support

Control

Agility

Ease of Mgmt

Legacy App Support

Control

Agility

Ease of Management

0

Control

10

9

8

7

6

5

Virtual Machines

+91-9916043731

Connecting Cloud Services via VNET

Developing Applications Better

[email protected]

+91-9916043731

Microsoft Azure Service Model

Example cloud service configuration with a single web role and a single worker role

Developing Applications Better

[email protected]

+91-9916043731

Mixing Virtual Machines & Stateless Roles Multiple cloud services with stateless and virtual machines

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

RoleEntryPoint

RoleEntryPoint Developing Applications Better

[email protected]

+91-9916043731

CloudConfigurationManager

• Role RoleEntryPoint

Developing Applications Better

RoleEnvironment

[email protected]

+91-9916043731

RoleEntryPoint

Developing Applications Better

[email protected]

+91-9916043731

• • • • • • • • • • •

Developing Applications Better

[email protected]

+91-9916043731

• • •

Developing Applications Better

[email protected]

+91-9916043731

WAStorageEmulator.exe /init Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

VIPs in Cloud Services - Public IP address pointing to Azure Cloud Service where VM is deployed. - Every Cloud Service has a VIP and every Cloud Service can have several VMs. - A VIP assigned to Cloud Service won’t be released until last VM on that Cloud Service is Stopped (Deallocated) or Deleted

Developing Applications Better

[email protected]

+91-9916043731

Connecting Cloud Services via VIPs

Developing Applications Better

[email protected]

+91-9916043731

Connecting Cloud Services via VNET

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

AccessTheWebAsync

GetStringAsync

DoIndependentWork

await

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Code in the application…

Developing Applications Better

[email protected]

+91-9916043731

Control Flow…

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Code in the application…

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Replace for with Parallel.For

Developing Applications Better

[email protected]

+91-9916043731

Yes No Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

This is how it should be…

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

- Do not expose asynchronous wrappers around synchronous methods Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

3 types of methods

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Day1 •

Azure AD & SSO

VM, Cloud Services & Web Sites Analysis



Lab 2



Deployment, Configuration & Monitoring



Data Storage Options





Web Sites & AutoScale – Demo



Blobs, Disks, Tables & Queues





Cloud Services –



Serialized Object Graphs in JSON (DocumentDB)





async in .NET 4.5



Lab 3



Code Review & 3 Best Practices



Data Partitioning Strategies



Introduction



WPI & WebMatrix3 - Demo





One ASP.NET Philosophy



Microsoft Open Technologies

VM Depot - Demo



OWIN Katana Project – Examples & Demo



Lab 1



Cloud Dev Best Practices





Day2



Web Sites –

Developing, Deploying & Monitoring

Developing Applications Better

In-depth Blog Storage & Code Examples

Day3 •

Queuing on Microsoft Azure



Using DCS

Lab 4



Use Cases & Demo



Lab 7

Azure Service Bus Queues



Understanding Failures on Cloud



PowerShell Cmdlets

Azure Queues & Service Bus Queues – Compared



Types & Scope



Lab 8



Staged Deployment & GitHub Integration

Caching on Azure: Understanding Redis - Tutorial



Building Telemetry



Microsoft Azure Redis



Lab 6



Lab 9



Lab 5



DevOps on Cloud Principles



ASSESSMENT

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

There are two apps on the web and the user has a plain-old browser. Since the two apps never talk to each other directly, a mechanism would need to be devices where the user logs onto App A, receives and access token into their browser and passes it through to App B with then calls back to App A via some API to make sure the access token is valid. If we passed the access token into the user’s browser so it’s possible it could be snatched (perhaps by some malicious javascript). This is why most developers stick to the standard SSO protocols like SAML, OpenID and WS-Federation for the classic web-app to web-app single sign-on.

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

AD user ASP.NET MVC application set permissions Connecting

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

[email protected]

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Case Study:

SQL DB (PAAS) SQL VM (IAAS)

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

What we already know about Azure Tables • How Azure Storage Tables are structured

Developing Applications Better

[email protected]

+91-9916043731

What we already know about Azure Tables • Even though Azure Storage Tables are represented

in a tabular format, they are not to be confused with RDBMS tables

Developing Applications Better

[email protected]

+91-9916043731

http://bit.do/azure-tables-vs-sql

Developing Applications Better

[email protected]

+91-9916043731

http://bit.do/cqrs-

pattern

http://bit.do/event-sourcing-pattern

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Audit Events for Bob Tabor

Audit Events for Richard Boughton

Audit Events for Dan Star

Partition Key: User Identifier (Bob Tabor or 12345, Richard Boughton or 12346, etc.) Row Key: Something that uniquely identified a given entity (audit event) for that user. I.e., GUID Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

http://bit.do/querying-tables-entities http://bit.do/odata

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Best Practices

1

2 3

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

DocumentDb Resource Model

Developing Applications Better

[email protected]

+91-9916043731

http://bit.do/documentdb-sharding

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

http://bit.do/documentdb-pricing

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

http://weblogs.asp.net/scottgu/azure-newdocumentdb-nosql-service-new-search-service-newsql-alwayson-vm-template-and-more

http://azure.microsoft.com/enus/services/documentdb/

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Compute

Average Usage

Compute

Time

Average Usage

Time

Developing Applications Better

[email protected]

+91-9916043731

B

Developing Applications Better

[email protected]

L

OB

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Open VS2013  MyFixIt.Persistence  MyFixItContext.cs Developing Applications Better

[email protected]

+91-9916043731

The FixItContext class derives from Entity Framework, DbContext class, identifies the database and specifies the tables in the database.

The connection string in the Web.config file is called “appdb”. Here, points to the local development database.

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

The Entity Framework creates a FixItTasks table based on the properties included in the FixItTask entity class. This is POCO (Plain Old CLR Object) class. EF creates a table and executes a CRUD (create-readupdate-delete) ops.

Developing Applications Better

[email protected]

+91-9916043731

Server Explorer  appdb  FixItTasks  Right-click and Show Table Data

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

https://msdn.microsoft.com/enus/library/azure/hh767287.aspx

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Reference to the cache

Developing Applications Better

[email protected]

+91-9916043731

Connect to the cache

Developing Applications Better

[email protected]

+91-9916043731

Set expiration to items in cache

Developing Applications Better

[email protected]

+91-9916043731

Store ASP.NET Session State in cache

Developing Applications Better

[email protected]

+91-9916043731

Check Web.config file

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Day1 •

Azure AD & SSO

VM, Cloud Services & Web Sites Analysis



Lab 2



Deployment, Configuration & Monitoring



Data Storage Options





Web Sites & AutoScale – Demo



Blobs, Disks, Tables & Queues





Cloud Services –



Serialized Object Graphs in JSON (DocumentDB)





async in .NET 4.5



Lab 3



Code Review & 3 Best Practices



Data Partitioning Strategies



Introduction



WPI & WebMatrix3 - Demo





One ASP.NET Philosophy



Microsoft Open Technologies

VM Depot - Demo



OWIN Katana Project – Examples & Demo



Lab 1



Cloud Dev Best Practices





Day2



Web Sites –

Developing, Deploying & Monitoring

Developing Applications Better

In-depth Blog Storage & Code Examples

Day3 •

Queuing on Microsoft Azure



Using DCS

Lab 4



Use Cases & Demo



Lab 7

Azure Service Bus Queues



Understanding Failures on Cloud



PowerShell Cmdlets

Azure Queues & Service Bus Queues – Compared



Types & Scope



Lab 8



Staged Deployment & GitHub Integration

Caching on Azure: Understanding Redis - Tutorial



Building Telemetry



Microsoft Azure Redis



Lab 6



Lab 9



Lab 5



DevOps on Cloud Principles



ASSESSMENT

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

n

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

happen

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

NuGet Package Manager Console:

Go into the newrelic.config file, and copy in the license key from Connection Info Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

• • • • • • •

Developing Applications Better

Using Git in VS2013 Add Solution to Source Control Git, OK, creates Git repository in solution folder Right-click Solution Explorer, Commit Enter commit comment, and click Commit Compare with Modified, to see changes that were made Explore Branches, Merging etc.

[email protected]

+91-9916043731

Automation in Microsoft Azure

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

http://msdn.microsoft.com/en-us/library/dn568099.aspx

Developing Applications Better

[email protected]

+91-9916043731

FREE

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

Developers

Developing Applications Better

Solution Architects

[email protected]

+91-9916043731

Developing Applications Better

[email protected]

+91-9916043731

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF