sql >> Databáze >  >> NoSQL >> Redis

Pokus o vyřešení závislostí:Změna standardní knihovny .NET na NET Core - Microsoft.Extensions.Primitives

Nevím, co přesně děláte, ale reference rc1 se zdají být špatné, když je nyní ASP.NET Core RTM několik měsíců mimo provoz.

Vzal jsem zdroj 1.0.0 (musíte konkrétně vybrat značku 1.0.0. Hlavní větev je založena na ASP.NET Core 1.1).

Jediná věc, kterou jsem změnil, je project.json (Odstranil jsem ostatní nenačtené nesouvisející projekty a testovací projekty kromě Microsoft.Extensions.Caching.Redis.Test .

Toto je můj project.json (z Microsoft.Extensions.Caching.Redis ):

{
  "version": "1.0.0",
  "description": "Distributed cache implementation of Microsoft.Extensions.Caching.Distributed.IDistributedCache using Redis.",
  "packOptions": {
    "repository": {
      "type": "git",
      "url": "https://github.com/aspnet/caching"
    },
    "tags": [
      "cache",
      "distributedcache",
      "redis"
    ]
  },
  "buildOptions": {
    "warningsAsErrors": true,
    "keyFile": "../../tools/Key.snk",
    "nowarn": [
      "CS1591"
    ],
    "xmlDoc": true
  },
  "dependencies": {
    "Microsoft.Extensions.Caching.Abstractions": "1.0.0",
    "Microsoft.Extensions.Options": "1.0.0",
    "StackExchange.Redis.StrongName": "1.1.608"
  },
  "frameworks": {
    "netstandard1.5": { },
    "net451": {
      "dependencies": { },
      "frameworkAssemblies": {
        "System.Runtime": {
          "type": "build"
        }
      }
    }
  }
}

V Microsoft.Extensions.Caching.Abstractions nejsou vyžadovány žádné změny .

Případně můžete použít StackExchange.Redis místo StackExchange.Redis.StrongName který není silný pojmenované (podepsané). Nejste si jisti, zda takto vytvořený/zkompilovaný balíček bude podepsán stejným klíčem jako ostatní balíčky, což může později způsobit problémy. Pokud použijete nepodepsanou, může to také způsobit problémy, pokud má vaše aplikace silné jméno (nebo máte obchodní požadavek, aby byla všechna sestavení pevně podepsána).

Toto se zkompiluje a jednotkové testy projdou, dále se netestuje.

Pokud jde o zbytek vaší otázky:

Cíl nugetu ".NET Core 5" je dnx50 který byl používán až do ASP.NET Core rc1. S rc2 ASP.NET Core přešlo na dotnet-cli a DNX nyní není podporováno a nebude dostávat žádné další aktualizace. S rc2 netstandard byl představen pro zjednodušení vytváření knihoven tříd, které mohou cílit na většinu dostupných platforem (plné rozhraní .NET Framework, .NET Core, WinRT/WindowsPhone/Windows8/Windows10, mono, Xamarin atd.). Můžete se dozvědět více o .NET Standard Library.




  1. Nelze se připojit k Redis na 127.0.0.1:6379:Připojení odmítnuto s homebrew

  2. Percona Live 2017 – rekapitulace několika desítek

  3. Formátování ISODate z Mongodb

  4. Jak dotazovat MongoDB přímo z Ruby namísto použití Mongoidu?