ASP.NET MVC+Redis (准备工做)

今天准备更新这个项目的第二篇博客。有一点须要说明的是以前以为用的是Asp.net的WebPage,通过查看微软的官方文档还有相关的博客,相比较而言使用起来须要安装一个自动工具WebMatrix能够很快的搭建页面,除此以外我认为使用和学习价值并非很大,因此决定整个项目框架更换为Asp.netMvc。git

GitHub仓库建立

GitHub上建立一个本身的仓库,选择好开发工具,添加.gitignore和readme文件。github

gitignore文件和readme文件是很容易理解的。redis

  • 有了gitignore文件以后,在提交的时候有很好的拦截做用,确保仓库的简洁。
  • readme是md文件,即支持markdown语言,对项目说明有很好的展现效果。

项目建立完成以后,将项目克隆至本地路径中。数组

Asp.netMvc+Redis项目建立

  1. 起手式markdown

    目前阶段项目还不须要宇宙第一IDE VisualStudio(其实我是嫌VS太笨重了),因此VisualStudio Code在克隆好的路径中打开。mvc

    说到VS Code我仍是挺感谢它的,之因此放弃使用已久的notepad ++是由于对微软的东西彷佛有一种奇妙的感情。接触了VS Code后让我对全部的命令行工具备了很浓厚的兴趣,准备下一个阶段就学习一下Linux。框架

  2. 建立一个Asp.netCore Mvc项目工具

    使用VS Code建立项目DotNet CLI是惟一选择。打开终端视图使用命令便可完成建立学习

    dotnet new mvc

    须要说明的一点是,建立完项目后可在项目文件中看到项目已经引用了Microsoft.AspNetCore.All包。这个包包含了AspNetCore开发的大部分程序集,不须要额外引用,全部程序集版本也是跟随Microsoft.AspNetCore.All的。开发工具

  3. 建立Redis工具

    经过浏览Redis官网发现支持C#的客户端有不少的,大部分都已经支持DotNet Core了。个人选择是开源,没有次数限制的StackExchange.Redis

    若是项目不打算使用Microsoft.AspNetCore.All的话须要nuget官网中找到Redis客户端的引用命令,若是命令末尾不指定版本号的话默认为最新版本。

    dotnet add package StackExchange.Redis
    • 建立一个工具类文件夹Common用处存放全部Redis操做的类和其余具备共通意义的类文件。
    • 建立一个类文件,可使用DotNet Core命令dotnet new class也能够经过VS Code的图像化建立。建立文件以后要修改文件名和命名空间。
    • 引入Redis的命名空间,完成Redis工具类代码编写。
    using System;
    using StackExchange.Redis;
    using System.Collections.Generic;
    namespace Blog.Common
    {
    public static class RedisCommon
    {
    
        private static ConnectionMultiplexer redis;
    
        public static ConnectionMultiplexer GetConnection()
        {
            if (redis == null)
            {
                //Redis的链接地址若是不是本机格式为ip:port
                redis = ConnectionMultiplexer.Connect("localhost");
    
            }
            return redis;
        }
    
        //扩展方法
        public static Dictionary<string, string> ToDic(this HashEntry[] hash)
        {
            Dictionary<string, string> dic = new Dictionary<string, string>();
            if (hash.Length == 0)
                return dic;
            foreach (var item in hash)
            {
                dic.Add(item.Name, item.Value);
            }
            return dic;
        }
    }
    }

    目前这只是一个简单的工具类,只是对外提供了Redis的客户端对象,若是之后有什么须要附加的方法写到这里就好了。

    另外在这里我利用C#语法糖给HashEntry数组写了一个扩展方法,写这个方法的初衷是在编码过程当中老是有会遇到把HashEntry数组转换成Dictionary的过程,而往往到这个时候就会须要一个导入redis包的过程,并且这段代码也是冗余的。

  4. 至此Asp.netMvc + Redis 的全部准备工做已经完成,接下来准备开发符合书中内容的blog网站。

相关文章
相关标签/搜索