.NET Core Ecosystem
Application Models
- Web
- Mobile
- Desktop
- Microservices
- Gaming
- Machine Learning
- Cloud
- Internet of Things
| Language | Version |
|---|---|
| C# | |
| Visual Basic | |
| F# | 4.7 |
| Platform | Version | Feature |
|---|---|---|
| .NET Core | 3.0 | (runs anywhere!) Windows, Linux, and macOS |
| .NET Framework | 4.8 | websites, services, and apps on Windows |
| Xamarin/Mono | a .NET for mobile | |
| .NET Standard | The one platform, the shared set of libraries for the above |
Library
- Nuget
Tools
- Visual Studio Marketplace
Learn More
| Training | Progress |
|---|---|
| .NET Core 101 (Youtube) | 3/8 |
Resources
TechNet: Microsoft Documentation For all IT professionals, developers, and end users
MSDN: Microsoft Developer Network Any Developer, Any App, Any Platform
Windows Azure Virtual Machines & Networking
- Build xxxx
- Microsoft Ignite xxxx
- Azure Con xxxx
.NET - 3rd Party Resources
.NET Unit Testing Frameworks
- MsTest
- xUnit
- NUnit
MsTest, NUnit, xUnit are test framework, MsTest is what we using right now, but seems xUnit is more clear and lean.
.NET Mock/Fake Frameworks
- Mock Frameworks & Microsoft Fakes: https://saucelabs.com/blog/mock-frameworks-vs-microsoft-fakes
- Moq:
- NSubstitute
- Official: https://nsubstitute.github.io/
- http://ilkinulas.github.io/programming/unity/2016/02/25/mocking-with-nsubstitute.html
MS Mock framework, MS Fakes, Moq, NSubstitute are mocking and faking frameworks that used for UT, seems NSubstitute is more clean for UT coding.
Code Refactoring
- Design patterns
- Creational patterns
- Structural patterns
- Behavioral patterns
- AntiPatterns
- Software Development AntiPatterns
- Software Architecture AntiPatterns
- Project Management AntiPatterns
- Refactoring
- Code Smells
- Refactoring techniques
- UML
- Introduction
- Introduction to the Case Study
- Modeling Business Systems
- Modeling IT Systems
- Modeling for System Integration
- Refactoring
- Design Patterns
What's .NET Framework
.NET Framework = Java Runtime (Execution Runtime))
C# = Java (Programming Language)
Check Project Source Codes
- Get/download source codes from code repository (from VSTS)
- Restore Nuget Packages
- Right-click solution name
- Click 'Restore Nuget Packages'
- Rebuild
- Right-click solution name
- Click 'Clean Solution'
- Right-click solution name
- Click 'Rebuild Solution'
.NET Framework Versioning
How to: Determine which .NET Framework version project developed on
- Right-click project name
- Click 'Properties' (or Press Alt+Enter)
How to: Determine which .NET Framework versions are installed on the Machine
C# Versions
- C# 6.0 - .NET 4.6, VS 2015
- C# 7.0 - .NET 4.7, VS 2017
- C# 8.0 - in preview
Application Types
- Library
- Class Library
- Console
- Console App
- Desktop
- Windows Forms App
- WPF App (Windows Presentation Foundation) - XAML
- Web
- ASP.NET Web Site - Script block in web page source
- ASP.NET Web Forms - .aspx + .cs
- ASP.NET Web App - .cshtml (Razor) + .cs
- ASP.NET MVC - for dynamic web pages
- ASP.NET Web API - for REST API
Console App
Set Console App Project as StartUp Project
- Right-click project name
- Click 'Set as StartUp Project'
Program Entry
- File: Program.cs
- Method:
static void Main(string[] args)
* args: Console command parameters, e.g. myApp param1, param2, ..., paramN
Exception Handling
try{
// logic
}
catch(Exception ex){
// execute when specific exception/error happends
}
Conditional Statements
- IF, Switch, For, While
https://www.guru99.com/c-sharp-conditional-statements.html
Log Level
- Debug
- Info
- Warn
- Error
- Fatal
API Error Handling
- HTTP 200 + Succeed Flag = Logical Correct
- HTTP 200 + Failed Flag = Logical Incorrect
- HTTP 404/500 (Web Server/Software Error, Authentication Error) = Application Error
- HTTP 505 (Network Not Found) = Network Error
HTTP Method
- HTTP GET (URL only)
- POST (with HTTP body)
- HEAD
- OPTION (query description doc)
- PUT
- DELETE
HTTP Request/Response Model
- Request
- HTTP URL
- HTTP Headers (including cookies)
- HTTP Body
- Response
- HTTP Headers (including return code)
- HTTP Body
JSON (JavaScript Object Notation)
- Serialize: Object(s) -> JSON text/string
- Deserialize: JSON text/string -> Object(s)
Generic Type
public static FunctionName<T>
Variable Types
- Reference Type (Class, ref)
- Pass itself into function, and will be returned back with value changes in function
- Value Type (Structure, basic types e.g. numbers)
- Pass its shadow copy and original variable will not be impact
C# Lambda Expressions
.NET Core Ecosystem的更多相关文章
- [翻译]为你的服务器选择正确的.NET
英文原文 By Daniel Roth ASP.NET 5 is based on the .NET Execution Environment (DNX), which supports runni ...
- 魅力 .NET:从 Mono、.NET Core 说起
前段时间,被问了这样一个问题:.NET 应用程序是怎么运行的? 当时大概愣了好久,好像也没说出个所以然,得到的回复是:这是 .NET 程序员最基本的...呵呵! 微软开源,其实不只是对 .NET 本身 ...
- [转]Writing Custom Middleware in ASP.NET Core 1.0
本文转自:https://www.exceptionnotfound.net/writing-custom-middleware-in-asp-net-core-1-0/ One of the new ...
- .NET:从 Mono、.NET Core 说起
魅力 .NET:从 Mono..NET Core 说起 前段时间,被问了这样一个问题:.NET 应用程序是怎么运行的? 当时大概愣了好久,好像也没说出个所以然,得到的回复是:这是 .NET 程序员最基 ...
- NoSQL生态系统(nosql ecosystem)
Unlike most of the other projects in this book, NoSQL is not a tool, but an ecosystem composed of se ...
- Introducing .NET Core
At connect(), we announced that .NET Core will be entirely released as open source software. I also ...
- Spring Framework Ecosystem – Introduction to Spring Projects
来自于:http://springtutorials.com/spring-ecosystem/ Hello and Welcome to Spring Tutorials Blog! Is it f ...
- 一篇很好的解释了.Net Core, .Net Framework, .Net standard library, Xamarin 之间关系的文章 (转载)
Introducing .NET Standard In my last post, I talked about how we want to make porting to .NET Core e ...
- 魅力 .NET:从 Mono、.NET Core[转]
前段时间,被问了这样一个问题:.NET 应用程序是怎么运行的? 当时大概愣了好久,好像也没说出个所以然,得到的回复是:这是 .NET 程序员最基本的...呵呵! 微软开源,其实不只是对 .NET 本身 ...
随机推荐
- .NET WebApi使用Swagger
1.新建WebApi 项目 2.引用Swagger 包 3.创建项目XML注释文档 在项目App_Start文件夹下的SwaggerConfig.cs类中加入 c.IncludeXmlComments ...
- VM虚拟机 Ubuntu配置与ssh连接
VMware安装ubuntu 自定义 不作更改 选择稍后安装操作系统,相当于裸机,没装系统. 选择ubuntu64 选择虚拟机名字与保存路径 配置情况 2G即可 网络类型,选择NAT 可以了解一下这几 ...
- ASP.NET Core 简单集成签发 JWT (JSON Web Tokens)
什么是 JWT ? 从 https://jwt.io/ 可以了解到对 JWT 的描述:JSON Web Tokens are an open, industry standard RFC 7519 m ...
- 配置DHCP Relay的功能原理是什么?
DHCP中继代理,就是在DHCP服务器和客户端之间转发DHCP数据包.当DHCP客户端与服务器不在同一个子网上,就必须有DHCP中继代理来转发DHCP请求和应答消息.DHCP中继代理的数据转发,与通常 ...
- LintCode 练习题
/** * 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输 ...
- 微服务8:通信之RPC实践篇(附源码)
★微服务系列 微服务1:微服务及其演进史 微服务2:微服务全景架构 微服务3:微服务拆分策略 微服务4:服务注册与发现 微服务5:服务注册与发现(实践篇) 微服务6:通信之网关 微服务7:通信之RPC ...
- javaweb项目对https的配置01
1.准备证书生成 a.进入到jdk下的bin目录(如果配置了Java的环境,可以直接在cmd命令窗口中直接输入如下命令) keytool -v -genkey -alias tomcat -keyal ...
- sql注入之简要注入
#mysql简要注入流程 mysql注入简要流程如下图: 由于还没学习完先结合sqlilabs的第一关讲解信息收集的一部分和数据注入的information_schema的有据查询. #sqli-la ...
- linux的一些sao东西
1.sys命令的目录 /usr/include/asm-generic
- java常见字节大小存储问题
JAVA中默认的编码方式 转:http://blog.csdn.net/scyatcs/article/details/31356823 编码问题存在两个方面:JVM之内和JVM之外.1.Java文件 ...