使用下一代的visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )

Post on 24-May-2015

1.020 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 ) - Sky

TRANSCRIPT

使用下一代的 Visual Studio 14開發下一代的 ASP.NET MVC vNext ( MVC 6 )Sky Chang

天空的垃圾場blog.sanc.idv.

tw

ASP.NET vNext and the Modern Web

選擇你想要的編輯器與工具

完全開源並可貢獻 跨平台OSS

無縫銜接雲和本地

快速的開發週期完全模組化

快 !

ASP.NET vNext - Summary

Feature .NET vNext

.NET vNext (Cloud Optimized)

Cloud Ready * *

Modular Design * *

Dependency Injection * *

Consistent Tracing / Debugging * *

Faster Development (No Build Step) * *

Open Source * *

Full Side by Side (framework deployed inside application)

*

Fast startup, Low memory / High throughput (best of class)

*

MVC, Web API, Web Pages 6, SignalR 3, EF 7

ASP.NET vNext – 兼容性Web Forms, MVC 5, Web API 2, Web Pages 3, SignalR 2, EF 6

完全支援 .NET vNext

MVC, Web API, Web Pages 6, SignalR 3, EF 7重大改變 :

New project systemNew configuration systemMVC / Web API / Web Pages 合併無 System.Web, 新的輕量 HttpContext ( 非 System.Net.Http)改為 Dependency Injection

.NET vNext (Cloud Optimized).NET vNext Framework 的子集

有些東西可能無法使用 ( 例如 : images )

.NETvNext Web and services

Future of .NET

Device optimized Native compilation 小且輕量 , 並行 跨平台

Cloud optimized 高吞吐量 小且輕量 , 並行 跨平台

Windows Store, WPF, Windows Forms, Console apps and related libraries.

ASP.NET vNext: Web Forms, MVC, Web Pages, Web API, SignalRWCF

Client apps

Next gen JIT (“RyuJIT”)

SIMD (Data Parallelization)

Runtime

Compilers.NET Compiler Platform (“Roslyn”)

Languages innovationBCL and PCLEntity Framework

Libraries

Common

Openness

多用途

專門

Language and IDE

VS 可擴展開發經驗

Open Source

.NET Compiler Platform (“Roslyn”)

Scenarios/usage cases

OSS

API

C#VB

下一代 .NET Compilers

API: 開放平台豐富的 IDE 功能 / 重構程式碼分析自訂診斷開源編輯器

“Roslyn” is the basis for .NET and Visual Studio vNext

.NET Compiler Platform (“Roslyn”)

從前隔離 / 封閉 compilers

難以擴展開發經驗

C#, VBSource code

.exe/.dilIL assemblies

Established .NET compilers

演進下一代 .NET Compilers

API: 開放平台豐富的 IDE 功能 / 重構程式碼分析自訂診斷開源編輯器

.NET Compilers Platform(a.k.a. ROSLYN)

C#, VBSource code

.exe/.dilIL assemblies

Open platform for developers

DemoNew project system 、 New configuration system

Demo模組化、快速開發、無縫銜接雲和本地

Demo編輯器與工具、完全開源、跨平台

ASP.NET vNext & K Project

ASP.NET vNext & K project

ASP.NET vNext & K project

Helios太陽神實作 OWIN , IIS 上的一層 ...

KLR ( K Language Runtime )負責尋找、調用 CLR Native Host.

KRE ( K Runtime Engine )KVM ( K Version Manager )KPM ( K Package Manager )K

ASP.NET MVC 6

KRE ( K Runtime Engine )

ASP.NET MVC 6

ASP.NET MVC 6Route

Web API

DemoRoute & Web API

ASP.NET MVC 6Area

只需要 Route 做設定任何 Controller 都可以使用Attribute 設定 Area會自動對應到 Areas 目錄下的View

DemoAreas

POCO Controller

Demopoco Controller

Old ASP.NET MVCRequest-Handling

ASP.NET vNext – 兼容性為什麼會有 POJOPOJO 的意義POJO 與 PO( 持久對象 ) 、 VO(ValueObject) 的區別POJO 的擴展POCO VS DTOPOCO Controller

Dependency Injection

DemoDependency Injection

注入流程

注入生命週期Lifestyle Description

Instance A specific instance is given all the time. You are responsible for its initial creation

Transient A new instance is created every time

Singleton A single instance is created and it acts like a singleton

Scoped A single instance is created inside the current scope. It is equivalent to Singleton in the current scope

top related