自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

菜鸡成长日记

C#从入门到上班,Python从入门到入狱,Java从入门到继续入门 更多内容查看https://www.attachie.club

  • 博客(65)
  • 资源 (2)
  • 收藏
  • 关注

原创 【asp.net core 系列】15 自定义Identity

0. 前言在之前的文章中简单介绍了一下asp.net core中的Identity,这篇文章将继续针对Identity进行进一步的展开。1. 给Identity添加额外的信息在《【asp.net core 系列】13 Identity 身份验证入门》一文中,我们大概了解了如何使用Identity,以及如何保存一些信息以便后续的验证。这里我们将深入讨论一下如何给Identity添加更多的信息。我们知道在给Identity添加数据的时候,需要添加一个Claim对象。我们先回顾一下Claim的信息,Cla

2020-07-09 08:24:17 1198

原创 【asp.net core 系列】14 .net core 中的IOC

0.前言通过前面几篇,我们了解到了如何实现项目的基本架构:数据源、路由设置、加密以及身份验证。那么在实现的时候,我们还会遇到这样的一个问题:当我们业务类和数据源越来越多的时候,我们无法通过普通的构造对象的方法为每个实例进行赋值。同时,传统意义上的赋值遇到底层切换或者其他修改的时候,就需要修改大量的代码,对改变不友好。为了改变这种现状,我们基于面向接口编程,然后使用一些DI功能和IOC框架。1. IOC和DI先来给大家解释几个概念,IOC全称Inversion of Control,翻译过来就是控制反

2020-06-28 08:52:23 1705

原创 【asp.net core 系列】13 Identity 身份验证入门

0. 前言通过前两篇我们实现了如何在Service层如何访问数据,以及如何运用简单的加密算法对数据加密。这一篇我们将探索如何实现asp.net core的身份验证。1. 身份验证asp.net core的身份验证有 JwtBearer和Cookie两种常见的模式,在这一篇我们将启用Cookie作为身份信息的保存。那么,我们如何启用呢?在Startup.cs 的ConfigureServices(IServiceCollection services) 方法里添加如下:services.AddAut

2020-06-23 23:06:56 1189

原创 【asp.net core 系列】12 数据加密算法

0. 前言这一篇我们将介绍一下.net core 的加密和解密。在Web应用程序中,用户的密码会使用MD5值作为密码数据存储起来。而在其他的情况下,也会使用加密和解密的功能。常见的加密算法分为对称加密和非对称加密。所谓的对称加密是指加密密钥和解密密钥是同一个,非对称加密是值加密密钥和解密迷药不同。而我们常应用在保存用户登录密码这个过程中的MD5本质上并不是加密算法,而是一种信息摘要算法。不过MD5尽量保证了每个字符串最后计算出来的值都不一样,所以在密码保存中常用MD5做为保密值。1. 常见对称加密算法

2020-06-22 22:45:16 831

原创 【asp.net core 系列】- 11 Service层的实现样板

0.前言在《asp.net core 系列》之实战系列中,我们在之前的篇幅中对项目有了一个大概的认知,也搭建了一个基础的项目骨架。那么就让我们继续完善这个骨架,让它更加丰满。这一篇,我将带领小伙伴们一起实现用户管理功能。1. 数据表一般情况下,我们会把用户表和登录信息表放在两个表里。为什么会这样设计呢?出于以下几种考虑:使功能分割,用户信息管理是用户管理,登录是登录增加安全,降低无关信息的查询,例如访问登录接口不会连带检索用户的普通信息,当进行用户信息管理的时候,不会把登录信息也带过来等等

2020-06-21 18:08:17 1367

原创 【asp.net core 系列】10 实战之ActionFilter

0.前言在上一篇中,我们提到了如何创建一个UnitOfWork并通过ActionFilter设置启用。这一篇我们将简单介绍一下ActionFilter以及如何利用ActionFilter,顺便补齐一下上一篇的工具类。1. ActionFilter 介绍ActionFilter全称是ActionFilterAttribute,我们根据微软的命名规范可以看出这是一个特性类,看一下它的声明:[AttributeUsage(AttributeTargets.Class | AttributeTargets

2020-06-18 05:41:06 1746

原创 【asp.net core 系列】9 实战之 UnitOfWork以及自定义代码生成

0. 前言在前一篇中我们创建了一个基于EF的数据查询接口实现基类,这一篇我将带领大家讲一下为这EF补充一些功能,并且提供一个解决避免写大量配置类的方案。1. SaveChanges的外移在之前介绍EF Core的时候,我们提到过使用EF需要在每次使用之后,调用一次SaveChanges将数据提交给数据库。在实际开发中,我们不能添加一条数据或者做一次修改就调用一次SaveChanges,这完全不现实。因为每次调用SaveChanges是EF向数据库提交变更的时候,所以EF推荐的是每次执行完用户的请求之后

2020-06-15 05:38:21 1683

原创 【Java Spring Cloud 实战之路】- 4添加一个SpringBootAdmin监控

0. 前言在之前的几章中,我们先搭建了一个项目骨架,又搭建了一个使用nacos的gateway网关项目,网关项目中并没有配置太多的东西。现在我们就接着搭建在Spring Cloud 微服务中另一个重要的项目 - Spring boot admin.1. Spring Boot Admin 介绍Spring Boot Admin 用来监控基于Spring Boot的应用,在Spring Boot Actuator的基础上提供了简洁的可视化Web UI。Spring Boot Admin 提供了以下功

2020-06-11 09:43:24 886

原创 【asp.net core 系列】8 实战之 利用 EF Core 完成数据操作层的实现

0. 前言通过前两篇,我们创建了一个项目,并规定了一个基本的数据层访问接口。这一篇,我们将以EF Core为例演示一下数据层访问接口如何实现,以及实现中需要注意的地方。1. 添加EF Core先在数据层实现层引入 EF Core:cd Domain.Implementsdotnet add package Microsoft.EntityFrameworkCore当前项目以SqlLite为例,所以再添加一个SqlLite数据库驱动:dotnet add package Microsoft.En

2020-06-09 22:20:17 1512

原创 【asp.net core】7 实战之 数据访问层定义

0. 前言在上一篇,我们搭建了一个项目框架,基本上是一个完整的项目。目前而言,大部分的应用基本都是这个结构。好的,不废话了,进入今天的议题:完成并实现数据层的基础实现。1. 数据实体通常情况下,一个项目的数据实体中字段并不是完全没有规律可寻。通常情况下,必须有一个主键。有些时候,会要求在数据表中增加上次修改时间和创建时间,以及创建人和修改人的主键。所以,我们可以创建一个泛型父类,来帮我们定义这些公共字段:using System;namespace Data.Infrastructure{

2020-06-07 16:51:44 974

原创 【asp.net core 系列】6 实战之 一个项目的完整结构

0. 前言在《asp.net core 系列》之前的几篇文章中,我们简单了解了路由、控制器以及视图的关系以及静态资源的引入,让我们对于asp.net core mvc项目有了基本的认识。不过,这些并不是 asp.net core mvc项目的全部内容,剩下的内容我将结合实战项目为大家讲解其中的知识。现在,就让我们开始吧。1. 项目构建抛开之前的项目,现在跟着我重新创建一个项目,第一步依旧是先创建一个解决方案:dotnet new sln --name Template我先介绍一下这个项目(指整个项

2020-06-06 16:46:27 1710

原创 【asp.net core 系列】5 布局页和静态资源

0. 前言在之前的4篇的内容里,我们较为详细的介绍了路由以及控制器还有视图之间的关系。也就是说,系统如何从用户的HTTP请求解析到控制器里,然后在控制器里处理数据,并返回给视图,在视图中显示出来。这一篇我将为大家介绍基础的最后一部分,布局页和静态资源引入。1. 布局页在控制器和视图那一篇,我们了解到_ViewStart 里设置了一个Layout属性的值,这个值正是用来设置布局页的。所谓的布局页,就是视图的公用代码。在实际开发中,布局页通常存放我们为整个系统定义的页面框架,视图里写每个视图的页面。回顾

2020-06-05 14:26:03 973

原创 【asp.net core 系列】4. 更高更强的路由

0. 前言在之前我们介绍了请求通过路由寻找到控制器,以及控制器与视图的数据流转。那么,我们回过头来,再看看路由的一些其他用法。1. 路由属性(Route Attribute)按照英文的直接翻译,Routing Attribute 的意思是路由属性,但实际上 Attribute在微软的官方称呼是特性。嗯,所以个人觉得Route Attribute应该是特性路由,路由特性。嗯,暂且甩开称呼的问题,小伙伴们知道这是一种使用Attribute标记的路由配置方案就行。我们之前了解的路由设置都是通过路由表设置的

2020-06-04 15:23:24 776

原创 【Java Spring Cloud 实战之路】- 3 使用Nacos和网关中心的创建

0. 前言在上一节中,我们创建了一个项目架构,后续的项目都会在那个架构上做补充。1. Nacos1.1 简介Nacos可以用来发现、配置和管理微服务。提供了一组简单易用的特性集,可以快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos用来更敏捷和容易地构建、交付和管理微服务平台。Nacos是构建以”服务“为中心的现代应用构架(例如微服务范式、云原生范式)的服务基础设置。也就是通常我们所说的配置中心和服务发现中心。1.2 搭建和启动Nacos目前版本不支持以Spring boot

2020-06-04 09:48:19 707

原创 【asp.net core 系列】3 视图以及视图与控制器

0.前言在之前的几篇中,我们大概介绍了如何创建一个asp.net core mvc项目以及http请求如何被路由转交给对应的执行单元。这一篇我们将介绍一下控制器与视图直接的关系。1. 视图这里的视图不是数据库里的视图,是一种展示技术。在asp.net core mvc项目中视图是指以cshtml做扩展名的文件,通常在Views文件夹。那么现在我们进到之前创建的测试项目 MvcWeb的Views目录下,如果小伙伴们没有做修改的话,能看到如下的目录结构:├── Home│ ├── Index.c

2020-06-02 22:22:41 985

原创 【asp.net core 系列】2 控制器与路由的恩怨情仇

0. 前言在上一篇文章中,我们初步介绍了asp.net core,以及如何创建一个mvc项目。从这一篇开始,我将为大家展示asp.net core 的各种内容,并且尝试带领大家来挖掘其中的内在逻辑。当然,那是以后的事情。这一篇将通过自定义一个控制器来为大家介绍asp.net core mvc 中控制器和路由的相关知识。1. 控制器先在Controllers目录下添加一个类,名叫:public class DemoController{ public string Index()

2020-06-02 08:31:53 1048

原创 Java Spring Cloud 实战之路 - 2 创建项目

0. 前言该项目使用Maven进行管理和构建,所以需要预先配置好Maven。嗯,在这个系列里就不做过多的介绍了。1. 创建项目先创建一个pom.xml 文件,添加以下内容:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w

2020-05-31 23:45:49 239

原创 【asp.net core 系列】 1 带你了解一下asp.net core

0. 前言这是一个新的系列,名字是《ASP.NET Core 入门到实战》。这个系列主讲ASP.NET Core MVC,辅助一些前端的基础知识(能用来实现我们需要的即可,并非主讲)。同时这个系列也会在后续介绍ASP.NET Core 平台的其它类型的项目,并带领大家以各个类型的项目为主要架构开发一个网站或者网络服务中心。下图是官网关于Asp.net Core支持的项目的介绍1. ASP.NET Core 介绍这一节我将为大家介绍一下 asp.net core的发展历程。最早,微软为了替代CGI

2020-05-29 22:40:09 1326

原创 C# 数据操作系列 - 19 FreeSql 入坑介绍

0. 前言前几天FreeSql的作者向我推荐了FreeSql框架,想让我帮忙写个文章介绍一下。嗯,想不到我也能带个货了。哈哈,开个玩笑~看了下觉得设计的挺有意思的,所以就谢了这篇文章。简单介绍一下,FreeSql 是NCC组织的沙盒级项目,是一款功能强大的 ORM 组件,支持 .NET Core、.NET Framework 和 Xamarin。目前 FreeSql 支持以下数据库:MySQL、PostgreSQL、SqlServer、Oracle、Sqlite、Odbc、微软 Access 以及国

2020-05-29 11:46:09 3048

原创 C# 数据操作系列 - 18 让Dapper更强的插件

0. 前言在前一篇中我们讲到了Dapper的应用,但是给我们的感觉Dapper不像个ORM更像一个IDbConnection的扩展。是的,没错。在实际开发中我们经常用Dapper作为对EF Core的补充。当然了Dapper并不仅仅只有这些,就让我们通过这一篇文章去让Dapper更像一个ORM吧。1. Dapper ContribDapper Contrib 扩展了Dapper对于实体类的CRUD方法:安装方法:命令行:dotnet add package Dapper.ContribNuG

2020-05-28 13:58:36 958

原创 C# 数据操作系列 - 17 Dapper ——号称可以与ADO.NET 同台飙车的ORM

0. 前言之前四篇介绍了一个国内开发者开发的优秀框架SqlSugar,给我们眼前一亮的感觉。这一篇,我们将试试另一个出镜率比较高的ORM框架-Dapper。Dapper是一个轻量级的ORM框架,其以高速、简单易用为特点。在某些时候,效率甚至可以与ADO.NET 媲美。那么,吹得天花乱坠,就让我们实际看看它的表现吧。1. 开始使用照例,先创建一个项目:DapperDemodotnet new console --name DapperDemo然后切换到目录里:cd DapperDemo添加包支

2020-05-27 11:08:06 1211

原创 C# 数据操作系列 - 16 SqlSugar 完结篇

0. 前言前一篇我们详细的介绍了SqlSugar的增删改查,那些已经满足我们在日常工程开发中的使用了。但是还有一点点在开发中并不常用,但是却非常有用的方法。接下来让我们一起来看看还有哪些有意思的内容。1. 不同寻常的查询之前介绍了针对单个表的查询,同样也是相对简单的查询模式。虽然开发完全够用,但是难免会遇到一些特殊的情况。而下面这些方法就是为了解决这些意料之外。1.1 多表查询SqlSugar提供了一种特殊的多表查询方案,使用IQueryable接口 。来看看是怎样操作的吧:ISugarQuer

2020-05-26 14:00:38 7658

原创 C# 数据操作系列 - 15 SqlSugar 增删改查详解

0. 前言继上一篇,以及上上篇,我们对SqlSugar有了一个大概的认识,但是这并不完美,因为那些都是理论知识,无法描述我们工程开发中实际情况。而这一篇,将带领小伙伴们一起试着写一个能在工程中使用的模板类。1. 创建一个ClientSqlSugar在操作的时候需要一个Client,用来管理数据库连接,并操作数据库。所以我们写一个DbContext用来创建Client:public class DefaultContext{ public SqlSugarClient Client { ge

2020-05-24 21:25:12 7849

原创 C# 数据操作系列 - 14 深入探索SqlSugar

0.前言在上一篇中,我们知道了如何使用SqlSugar,但是也只是简单的了解了如何使用,仿佛是套着镣铐行走,这明显不符合一个合格的程序员应有的素养。所以,这一篇我们将对其进行深挖,探究其背后的秘密。1. 花式映射在实际开发中,程序中的实体类和数据库的表名并不能完全一致,造成的原因有很多,例如说团队对数据库的命名和对程序的命名有着不同的要求,数据库是先建立的而程序是后开发的,又或者是程序只使用了数据库中一部分表等等。这时候就会与C#约定优于配置相违背,但是这也符合C#的设计哲学,因为配置也是C#的一部

2020-05-23 17:01:46 3786 1

原创 C# 数据操作系列 - 13 SugarSql初探

0. 前言前言,暂时挥别NHibernate(虽然我突然发现这玩意还挺有意思的,不过看得人不多)。大步进入了有很多小伙伴向我安利的SQLSugar,嗯,我一直叫SugarSQL,好像是这个吧?这是一个由国内开发者开发的ORM框架,是一个轻量级框架(最新版的sqlSugarCore大概只有290kb)。下图是sqlSugar的功能描述:从图中我们能够大概看出,SqlSugar的使用需要预先创建一个SqlSugarClient对象。SqlSugar在此基础上添加了CRUD、实体信息维护(映射关系)、配置

2020-05-22 18:08:26 4035

原创 C# 数据操作系列 - 12 NHibernate的增删改查

0. 前言上一篇《C# 数据操作系列 - 11 NHibernate 配置和结构介绍》 介绍了Nhibernate里的配置内容。这一篇将带领大家了解一下如何使用NHIbernate。之前提到NHibernate继承了Hibernate的一些传统:使用XML文件进行配置,这一点也是备受争议。不过,有社区爱好者开发了一个名为《Fluent NHibernate》的项目,用来支持NHibernate的流式配置。当然,NHibernate本身也提供了NHibernate.Mapping.ByCode模式。不过这一

2020-05-22 08:09:39 367

原创 C# 数据操作系列 - 11 NHibernate 配置和结构介绍

0. 前言今天是NHibernate的第二篇内容,通过上一篇的内容,我们初步了解了NHibernate的创建和使用。这一篇,我继续探索NHibernate背后的秘密。嗯,就是这样。1. NHibernate结构先给小伙伴们放个图:这是NHibernate的整体结构图。NHibernate通过ADO.NET 建立访问数据库的连接,然后封装了一个Transaction(事务)工厂和一个Session工厂。每次操作的时候,通过两个工厂获取对应的Session/Transaction示例操作数据对象。I

2020-05-20 16:49:34 821

原创 C# 数据操作系列 - 10 NHibernate初试

0. 前言在上一篇基本讲完了EF Core的入门级教程。从这一篇开始,我们试着去探索一下 .net core平台上更多的ORM框架。那么,这一篇开始我们就来试试NHibernate。1. NHibernate 介绍NHibernate是Hibernate的C#版,众所周知Hibernate是Java 里ORM的顶梁柱(至少曾经)。Hibernate可以说开拓了Java的世界,当年SSH三驾马车风靡世界,至今Hibernate都发挥着举足轻重的作用。不过,与EntityFramework不同的地方是,

2020-05-20 08:34:21 1102

原创 C# 数据操作系列 - 9. EF Core 完结篇

0.前言《EF Core》实际上已经可以告一段落了,但是感觉还有一点点意犹未尽。所以决定分享一下,个人在实际开发中使用EF Core的一些经验和使用的扩展包。1. EF Core的异步操作正如这小节题目所言,EF Core是支持异步操作的,但实际可用集中在SaveChanges和异步查询这两个方法上。具体方法声明如下:public virtual System.Threading.Tasks.Task<int> SaveChangesAsync (System.Threading.Ca

2020-05-19 09:08:47 1279

原创 C# 数据操作系列 - 8. EF Core的增删改查

0.前言到目前为止,我们看了一下如何声明EF Core的初步使用,也整体的看了下EF Core的映射关系配置以及导航属性的配置。这一篇,我带大家分享一下,我在工作中需要的EF Core的用法。1. 初始化在实际开发中,一般都是先设计好数据表再进行开发,所以很少用到EF Core的数据迁移功能。所以EF Core的初始化,一般也指的是EF Core上下文初始化。1.1 连接字符串我们通过前面的文章知道,EF Core在上下文初始化的时候,都需要一个链接字符串。如果在不考虑后续变更或者上下文的复用性

2020-05-18 15:02:14 2044

原创 C# 数据操作系列 - 7. EF Core 导航属性配置

在上一篇,大概介绍了Entity Framework Core关于关系映射的逻辑。在上一篇中留下了EF的外键映射没有说,也就是一对一,一对多,多对一,多对多的关系等。这一篇将为大家细细分析一下,如何设置这些映射。1. 实体之间的关系从数据表来考虑,两个表之前的关系有一对一,一对多(多对一)和多对多的关系。其中一对一,指的是表A有一条记录对应着表B最多有一条记录与之对应。反过来也一样,表A也最多有一条记录与表B的某一条记录对应。具体在数据表上表现为,A表和B表各有一个外键指向对方。一对多和多对一是一个

2020-05-17 12:58:28 2751

原创 C# 数据操作系列 - 6 EF Core 配置映射关系

0. 前言在《C# 数据操作系列 - 5. EF Core 入门》篇中,我们简单的通过两个类演示了一下EF增删改查等功能。细心的小伙伴可能看了生成的DDL SQL 语句,在里面发现了些端倪。没看的小伙伴也不急,这就贴出来。public class ModelA{ public int Id { get; set; } public string Name { get; set; } public List<ModelB> ModelBs { get; } = new

2020-05-15 20:59:37 1913

原创 C# 数据操作系列 - 5. EF Core 入门

0.前言上一章简单介绍了一下ORM框架,并手写了一个类似ORM的工具类。这一章将介绍一个在C#世界里大名鼎鼎的ORM框架——Entity Framework的Core版。Entity Framework 非Core版目前已经更新到了6代,这是一款经过检验的ORM框架。在这里简单介绍一下Entity Framework(简称EF,额,别拿这个当关键字搜索,要不然你会被忽悠到一个英语培训机构的)的优点。C#的设计理念是约定优于配置,意思就是通过一定程度的规范性格式化的写法来避免使用配置文件或者配置代码等。

2020-05-14 15:38:55 1265

原创 C# 数据操作系列 - 4. 自己实现一个ORM

0. 前言在之前的几篇内容中,我们了解了如何通过ADO.NET 访问数据库,如何修改、新增数据。如何通过DataSet和DataAdapter获取数据,我们将在这一篇试试自己实现一个简单的ORM框架或者说ORM工具类。涉及到的知识点:反射(初级)ADO.NET 已有知识1. ORM那么,问题来了,什么是ORM?ORM全称 Object Relational Mapping,翻译过来就是对象关系映射。是一种通过描述对象与数据库之间映射关系的数据,将对象保存到数据库中的技术。在C#中,曾经En

2020-05-13 22:22:55 1079

原创 C# 数据操作系列 - 3. ADO.NET 离线查询

0. 前言在上一篇中,我故意留下了查询的示范没讲。虽然说可以通过以下代码获取一个DataReader:IDataReader reader = command.ExecuteReader();然后通过reader一行一行的读取数据,但是我并不推荐这样使用。在查询这一高频需求上,C#为之做了很多工作,提供了更多的选择。这里介绍一个查询的另一套写法。1. 离线查询C#在查询上提供了另一种机制,可以一次性从数据库把结果读取到网络缓存区中,直到使用的时候才加载到程序中。在离线查询里最关键的三个接口或类

2020-05-12 09:43:24 918

原创 C# 数据操作系列 - 2. ADO.NET操作

0.前言在上一篇中初略的介绍了一下SQL的基本写法,这一篇开始我们正式步入C#操作数据库的范围。通过这一系列的内容,我想大家能对于数据库交互有了一定的认识和基础。闲话不多说,先给大家介绍一个C#操作数据库的方式。1. ADO.NET的介绍在ADO.NET出现之前,C#连接数据库有很多种方式,各种框架琳琅满目。用户们饱受困扰,再加上乱七八糟的连接方式对语言的发展也是一种强有力的阻挠。所以微软决定搞一套标准化出来,之后ADO.NET诞生了。ADO.NET定义了一系列操作数据库的接口和基类,而数据库厂商只

2020-05-11 13:10:38 1130

原创 C# 数据操作系列 - 1. SQL基础操作

0.前言前篇介绍了一些数据库的基本概念和以及一些常见的数据库,让我们对数据库有了一个初步的认识。这一篇我们将继续为C#数据操作的基础填上一个空白-SQL语句。SQL(Structured Query Language,结构化查询语言)是一种特定的编程语言,用于管理数据库系统,操作数据甚至编写一些程序。当然,一方面因为时间问题,一方面因为各大数据库的区别(当然了,还有就是个人对SQL研究并不是那么深)所以这一篇就从SQL的基本操作入手,带领大家一起看看SQL的世界。1. SQL的分类在SQL的世界里

2020-05-10 09:14:50 835

原创 C# 数据操作系列 - 0. 序言

0. 前言在上一个系列中,我们初步浏览了一下C#的基础知识。这句话的意思就是C#基础知识系列完结了,撒花。当然,并不是因为C#已经讲完了。正是因为我们轻轻地叩开了那扇门,才能看到门后面那瑰丽的世界。那么,门后面有什么?就让我在后续的篇幅里,带着大家一起浏览吧。0.1 C# 能做什么之前在开发工具篇大概为大家介绍了.net 分的方向,.net framework,.net core,mono,UWP 这四个。严格讲这不是技术区分的方向,而是基于SDK的区分。说起能完成的功能,接下来给大家看一个图:

2020-05-09 09:51:38 836

原创 C# 基础知识系列- 17 小工具优化

0. 前言不知道有没有动手能力强的小伙伴照着上一篇的内容写过程序呢?如果有的话,应该会在使用的时候发现以下几个问题:每次启动都需要经过漫长的时间去遍历磁盘里的文件目录因为数据是用的字典保存的,所以会消耗大量的内存空间不能多次查询现在我们就针对这些问题,让我们的小工具实用起来。1. 分析与实现在动手之前,我们先分析一下问题。在实际开发之前,无论是接到什么需求都要先仔细分析一下,确定...

2020-05-08 13:25:05 463

原创 C# 基础知识系列- 17 实战篇 编写一个小工具(1)

0. 前言这是对C# 基础系列的一个总结,现在我们利用之前学到的知识做一个小小的工具来给我们使用。如果有看过IO篇的小伙伴,应该有印象。当时我提过一个场景描述,我们在平时使用系统的时候,经常会为了找某个文件的位置而烦恼。那么我们现在尝试写一个控制台程序来帮助我们找文件的具体位置。1. 分析好,大家应该初步了解了需求内容。然后让我们来做一个简单的需求分析:简单分析一下需求包括哪些功能点...

2020-05-07 13:25:19 1381

Flask&Django.zip

Flask和Django的入门文档。对于初学者来说Flask相对简单快捷一点,但是Django仍有其一定的优势。建议大家两个都试试看

2020-01-14

Axure 控件库 全套

Axure控件库,个人收集的。因为种类比较多,没有进行细致的整理,所以整个打包上传了,有需要的可以下载~ 为了积分,所以收了1分,感谢打赏

2014-09-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除