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網站。

相關文章
相關標籤/搜索