-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmy-channel9-introducing-asp-net-core-2-0-lesson-review.html
177 lines (174 loc) · 10.1 KB
/
my-channel9-introducing-asp-net-core-2-0-lesson-review.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
<!DOCTYPE html>
<html lang="en-US" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<title>My "Introducing ASP.NET Core 2.0" lesson's review</title>
<link rel="shortcut icon" href="/wwwroot/favicon.ico" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="language" content="en" />
<meta name="keywords" content="ASP.NET Core 2.0.0-preview1,SignalR,Channel 9,Razor Pages,MVC,Application Insights,ASP.NET MVC,Visual Studio 2017,Visual Studio 2017 Preview,Azure AD B2C,ASP.NET CORE CLI,Channel9,Build2017,Build 2017,ASP.NET Core,CLI,Microsoft Build 2017,dotnet cli,dot net CLI,.NET Core command-line,.NET Core command-line tools,dotNET Core command-line,dotNET Core command-line tools" />
<meta name="description" content="My 'Introducing ASP.NET Core 2.0' lesson's review on Channel9, recorded at the Microsoft Build 2017" />
<meta name="author" content="Adrien Torris" />
<meta name="robots" content="index,follow" />
<meta name="generator" content="No404! 0.1" />
<!--<link rel="canonical" href="https://adrientorris.github.io/aspnet-core/my-channel9-introducing-asp-net-core-2-0-lesson-review.html" />-->
<link href="/wwwroot/css/style.css" rel="stylesheet" />
<script defer src="https://use.fontawesome.com/releases/v5.0.7/js/all.js"></script>
</head>
<body>
<div id="main_ctn" class="post_ctn">
<header>
<div id="header-content">
<h2>Blog</h2>
<ul id="social_links">
<li id="twitter_link">
<a href="https://twitter.com/AdrienTorris" target="_Blank" rel="nofollow" title="Adrien Torris sur Twitter">
<i class="fab fa-twitter fa-2x"></i>
</a>
</li>
<li id="github_link" title="Adrien Torris sur GitHub">
<a href="https://github.com/AdrienTorris" target="_Blank" rel="nofollow">
<i class="fab fa-github fa-2x"></i>
</a>
</li>
<li id="so_link">
<a href="https://stackoverflow.com/users/story/4428633" target="_Blank" rel="nofollow" title="Adrien Torris sur StackOverflow">
<i class="fab fa-stack-overflow fa-2x"></i>
</a>
</li>
<li id="linkedin_link">
<a href="https://www.linkedin.com/in/adrientorris/" target="_Blank" rel="nofollow" title="Adrien Torris sur LinkedIn">
<i class="fab fa-linkedin fa-2x"></i>
</a>
</li>
<li id="gplus_link">
<a href="https://plus.google.com/u/0/+AdrienTorris" target="_Blank" rel="nofollow" title="Adrien Torris sur Google Plus">
<i class="fab fa-google-plus-g fa-2x"></i>
</a>
</li>
</ul>
</div>
</header>
<div id="arianne_wrapper">
<ul>
<li><a href="https://adrientorris.github.io/index.html" title="">Home</a></li>
<li>ASP.NET Core</li>
<li class="active"><a href="https://adrientorris.github.io/aspnet-core/my-channel9-introducing-asp-net-core-2-0-lesson-review.html" title="My 'Introducing ASP.NET Core 2.0' lesson's review">My "Introducing ASP.NET Core 2.0" lesson's review</a></li>
</ul>
</div>
<div id="post_ctn">
<h1>My "Introducing ASP.NET Core 2.0" lesson's review</h1>
<h2>1) .NET Standard</h2>
<ul>
<li>.NET Standard isn't a Framework but an agreement, an interface. .NET Standard is a series of APIs that allow multiple instances of .NET which are agree on something</li>
<li>.NET Standard provides a specification for any platform to implement. It allows sharing code, binaries, and skills between .NET client, server and all flavors.</li>
<li>All .NET Runtimes provider by Microsoft implement the standard</li>
</ul>
<!--
<div class="pic_wrapper"><img src="/wwwroot/images/aspnet-core/channel9-introducing-asp-net-core-2-0-lesson-review/" title="" /></div>
-->
<div class="pic_wrapper"><img src="/wwwroot/images/aspnet-core/channel9-introducing-asp-net-core-2-0-lesson-review/dotnet-standard-2-0-asp-net-core.png" title="" /></div>
<div class="pic_wrapper"><img src="/wwwroot/images/aspnet-core/channel9-introducing-asp-net-core-2-0-lesson-review/david-fowler-tweet-dotnet-standard-explain.png" title="" /></div>
<p><a href="https://gist.github.com/davidfowl/8939f305567e1755412d6dc0b8baf1b7" target="_blank" rel="nofollow" title=""></a></p>
<h2>How to test</h2>
<p>You have to install the .NET Core 2.0 framework and the preview of Visual Studio 2017. Visual Studio 2017 Preview will install another install of Visual Studio 2017 so you can have Visual Studio 2017 and Visual Studio 2017 Preview side-by-side.</p>
<h2>Application configuration</h2>
<ul>
<li>The ASP.NET Core team did a rollback on the project.json file, to come back to a old-like CSPROJ, still in XML but with a much lighter format</li>
<li>The package dependency management allows to reference packages of packages, to avoid reference dozens of packages manually, but you still can do this if you prefer</li>
<li>The host and application configuration is now managed by the Dependency Injection module, who simplify the process and add more flexibility</li>
<li>The default configuratrion file format is still Json</li>
</ul>
<h2>Razor Pages</h2>
<div class="pic_wrapper"><img src="/wwwroot/images/aspnet-core/channel9-introducing-asp-net-core-2-0-lesson-review/aspnet-core-20-razor-pages-solution-explorer.png" title="" /></div>
<div class="pic_wrapper"><img src="/wwwroot/images/aspnet-core/channel9-introducing-asp-net-core-2-0-lesson-review/aspnet-core-20-razor-pages-all-expand.png" title="" /></div>
<ul>
<li>Razor Pages are pages, not views</li>
<li>The folder "Pages" is interpreted and diseapears from the page urls (<i>/Pages/awesome.cshtml -> /awesome</i>)</li>
<li>Razor pages are not the future of MVC, it's another possibility of MVC</li>
</ul>
<p><a href="https://github.com/DamianEdwards/RazorPagesSample" target="_blank" rel="nofollow" title="">Razor Pages Sample by Damian Edwards on GitHub</a></p>
<h2>SignalR</h2>
<ul>
<li>Will be introduce in the future version of ASP.NET Core</li>
</ul>
<div class="pic_wrapper"><img src="/wwwroot/images/aspnet-core/channel9-introducing-asp-net-core-2-0-lesson-review/signalr-team-back-tweet-david-fowler.png" title="" /></div>
<h2>Performance</h2>
<ul>
<li>ASP.NET Core 2.0.0 is 25% faster than ASP.NET Core 1.1</li>
<li>The published files are much lighter than with ASP.NET Core 1.1</li>
</ul>
<div class="pic_wrapper"><img src="/wwwroot/images/aspnet-core/channel9-introducing-asp-net-core-2-0-lesson-review/publish-files-comparison-aspnet-core.png" title="" /></div>
<h2>Azure</h2>
<ul>
<li>Application Insights</li>
<li>Azure AD B2C</li>
</ul>
<br /><hr /><br />
<h3>Notes</h3>
<ul>
<li>Kestrel is the name of the tiny cross-platform web server</li>
<li>There is a certificate store in Visual Studio</li>
</ul>
<h3>Remarks</h3>
<ul>
<li>Demo starts with Visual Studio Code, the .NET Core CLI and Google Chrome, an "impartial browser" ( :) ), and switches after on Visual Studio 2017 Preview. Interesting to see that a lot of demos from the Build 2017 are using Visual Studio Code instead of Visual Studio, and GIT instead of TSVC when a source control software is needed. Google Chrome makes a lot of apprearance too.</li>
<li>Channel 9 is a really great source of knowledge</li>
<li>Scott Hanselman is awesome</li>
</ul>
<div id="crdny">May 30, 2017</div>
<div id="tags_wrapper">
<ul>
<li>.NET Core 2.0</li>
<li>.NET Core 2.0 Preview1</li>
<li>.NET Core</li>
<li>Visual Studio 2017</li>
<li>Visual Studio 2017 Preview</li>
<li>Azure</li>
<li>.NET Standard</li>
<li>Channel9</li>
<li>Channel 9</li>
<li>ASP.NET Core 2.0.0-preview1</li>
<li>SignalR</li>
<li>Microsoft Build 2017</li>
</ul>
</div>
<div id="refs_wrapper">
<ul>
<li><a href="https://channel9.msdn.com/Events/Build/2017/B8048" title="Introducing ASP.NET Core 2.0 on Channel 9" target="_Blank">Introducing ASP.NET Core 2.0 on Channel 9</a></li>
<li><a href="https://www.visualstudio.com/vs/preview/" title="Visual Studio Preview" target="_Blank">Visual Studio Preview</a></li>
<li><a href="https://blogs.msdn.microsoft.com/webdev/2017/05/10/aspnet-2-preview-1/" title="Announcing ASP.NET Core 2.0.0-Preview1 and Updates for .NET Web Developers" target="_Blank">Announcing ASP.NET Core 2.0.0-Preview1 and Updates for .NET Web Developers</a></li>
<li><a href="https://www.microsoft.com/net/learn/architecture" title=".NET Application Architecture Guidance" target="_Blank">.NET Application Architecture Guidance</a></li>
</ul>
</div>
</div>
<footer>
</footer>
</div>
<!--<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>-->
<script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
<script
src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"
integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU="
crossorigin="anonymous"></script>
<script src="/wwwroot/js/Infra.js" type="text/javascript"></script>
<!--<link type="text/css" rel="stylesheet" href="/wwwroot/lib/highlight/styles/vs.css" />
<script type="text/javascript" src="/wwwroot/lib/highlight/highlight.pack.js"></script>
<script type="text/javascript">hljs.initHighlightingOnLoad();</script>-->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-85948839-1', 'auto');
ga('send', 'pageview');
</script>
<script async src="https://www.googletagmanager.com/gtag/js?id=G-F924P8Y6HC"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-F924P8Y6HC');
</script>
</body>
</html>