Heim Backend-Entwicklung C#.Net-Tutorial Methoden zum Migrieren einer Datenbank zu SQL Server mithilfe von EF Core in der .NET Core-Klassenbibliothek_Praktische Tipps

Methoden zum Migrieren einer Datenbank zu SQL Server mithilfe von EF Core in der .NET Core-Klassenbibliothek_Praktische Tipps

Dec 15, 2017 pm 03:41 PM
.net core 迁移

In diesem Artikel wird hauptsächlich die Zusammenfassung der in ReactNative verwendeten Redux-Architektur vorgestellt. Der Herausgeber findet sie recht gut, daher werde ich sie jetzt mit Ihnen teilen und als Referenz verwenden. Freunde, die sich für .NET interessieren, folgen Sie bitte dem Herausgeber, um einen Blick darauf zu werfen

Dieser Artikel stellt eine Zusammenfassung der in ReactNative verwendeten Redux-Architektur vor und teilt sie mit allen. Die Details sind wie folgt:

Ich verwende Redux seit einiger Zeit. Zusammenfassend.

Warum Redux verwenden?

Hintergrund:

  1. RNs Zustand (veränderlich, Unterkomponente unsichtbar) und das Design von Requisiten (unveränderlich, für Unterkomponenten sichtbar) können bei Großprojekten leicht zu Zustandsverwirrungen aufgrund unbeabsichtigter Zustandsänderungen und Komponenten-Rendering-Fehlern führen

  2. RN verwendet Virtual DOM, das keine Zielbindung->Aktion ist, ist zum Ändern der UI-Eigenschaften erforderlich. Solange sich der Status ändert, wird die Komponente im neuen Status gerendert und die Daten werden in eine Richtung übertragen, während das MVC-Entwurfsmuster eine hat bidirektionaler Datenfluss.

  3. RN ist nicht einfach zu testen. Redux bietet eine sehr praktische Scheintestmethode.

Redux-Entwicklung

Entwicklungsumgebung

  1. Redux installieren: 'npm install –save redux'

  2. React Native- und Redux-Bindungsbibliotheken installieren: npm install –save reagieren-redux

  3. Installieren Sie die asynchrone Aktions-Middleware Redux Thunk: npm install –save redux-thunk

Drei Prinzipien

Einzelne Datenquelle

Die gesamte Anwendung Der Zustand wird in einem Objektbaum gespeichert, der in einem eindeutigen Speicher vorhanden ist. Der Status im Store ist an die Komponente gebunden

Status ist schreibgeschützt

Die einzige Möglichkeit, den Status zu ändern, besteht darin, eine Aktion auszulösen. action ist ein gewöhnliches JS-Objekt, das ein Typattribut enthält, das Ereignisse als Konstanten darstellen kann.

Verwenden Sie reine Funktionen, um Änderungen durchzuführen

Schreiben Sie Reduzierer, um zu beschreiben, wie die entsprechende Aktion den Zustand ändert. Im Allgemeinen können Sie switch(action.type) verwenden, um es ohne Nebenwirkungen zu handhaben

Verwenden Sie

react-redux stellt Connect und Provider bereit.

1. Provider ist der Verteilungspunkt der obersten Ebene, und das Attribut ist Store, das den Status an alle verbundenen Komponenten verteilt

2 oder mapDispatchToProps, eines ist die Komponente selbst, die gebunden werden soll.

Store

Store ist das Objekt, das Reducer und Aktion verbindet. Store hat die folgenden Aufgaben:

  1. Aufrechterhaltung des Status der Anwendung – ähnlich einer Datenbank, die den gesamten Status der Anwendung speichert.

  2. Stellt die getState()-Methode bereit. Alle aktuellen Zustände abrufen;

  3. stellt die Dispatch(aktion)-Methode zum Aktualisieren des Zustands bereit, was dem Speichern in der Datenbank und dem Speichern der Aktion zum Ändern des Zustands entspricht.

  4. Registrieren Sie den Hörer über „subscribe(listener)“.

Store ist im Wesentlichen ein Objekt, das den Status der gesamten Anwendung in Form eines Baums speichert. und stellt einige Methoden bereit. Zum Beispiel getState() und Dispatch().

Die Redux-Anwendung hat nur einen Store.

Store wird durch die Methode „createStore“ erstellt, basierend auf dem Anfangszustand des Root-Reduzierers der gesamten Anwendung.

Der Code lautet wie folgt:


import { createStore, applyMiddleware } from 'redux';
import thunk from 'redux-thunk';//异步
import reducers from './reducers';
const Store = applyMiddleware(thunk)(createStore)(reducers);
export default Store;
Nach dem Login kopieren


Reduzierer

Aktion beschreibt nur die Tatsache, dass etwas passiert ist, und gibt nicht an, wie sich die Anwendungsaktualisierungen befinden. Das ist es, was der Reduzierer tut.

Die Essenz von Reducer ist eine Funktion, und zwar eine reine Funktion. Es gibt keine Nebenwirkungen. Einfach ausgedrückt ist der Reduzierer nur für eine Aufgabe verantwortlich, nämlich den Status im Store basierend auf der empfangenen Aktion und dem empfangenen Status zu ändern:

(state, action) => newState

In der allgemeinen Implementierung wird switch(action.type) verwendet, um verschiedene Aktionen zu beurteilen, und der Standardwert ist der alte Status. Auch der Ausgangszustand kann definiert werden.

Code:


import { combineReducers } from 'redux';
const newState = (state = {}, action = {}) => {
 switch (action.type) {
  case ActionTypes.CSTATE:
   return { ...state, ...action.state };
  case '_DPDATACHANGE_':
   return {...state, ...action.dpState};
  default:
   return state;
 }
};
//Reducer 合并
export default combineReducers({
 newState,
});
Nach dem Login kopieren


Hinweis: Der neue Zustand wird zurückgegeben, wenn Sie müssen einige alte Statuswerte beibehalten, ... state verwenden (ES7s Objekterweiterungssyntax, die entsprechenden Eigenschaften des Objekts werden flach kopiert, hier entspricht Object.assign ({}, state, newState)) und if Wenn Sie den Status zusammenführen, wird er nur auf einer Ebene zusammengeführt. Komplexe Status müssen manuell zusammengeführt werden.

Aktion

Aktion ist ein gewöhnliches JS-Objekt, das mindestens ein Typattribut enthält, das das Ereignis darstellt, und andere Attribute können zum Übergeben von Daten verwendet werden. In der Praxis wird eine Funktion für einen Prozess definiert, der Netzwerkanforderungen einschließen kann und schließlich eine Aktion zurückgibt. Diese Funktion wird als Action Creator bezeichnet.

Code: Store kann diese Aktion auslösen. Der Aktionstyp stellt die Kennung dar, und der Status sind die darin enthaltenen Daten.


export const newState = state => {
 Store.dispatch({
  type: ActionTypes.CSTATE,
  state,
 });
};
Nach dem Login kopieren


Persistenz

Wird basierend auf dem Reduzierschlüssel wiederhergestellt, wenn eine Aktion ausgelöst wird Daten müssen dann nur dann verteilt werden, wenn die Anwendung gestartet wird. Dies kann auch problemlos in einen konfigurierbaren Erweiterungsdienst abstrahiert werden. Tatsächlich hat die Drittanbieterbibliothek redux-persist dies alles bereits für uns erledigt.

Der Code in Aktion kann wie folgt lauten:


export const getStorage = async (key) => {
 const d = await AsyncStorage.getItem(key);
 return JSON.parse(d);
};
export const setStorage = (key, value) => {
 AsyncStorage.setItem(key, JSON.stringify(value));
};
Nach dem Login kopieren


connect

Pass – Stellt die getState()-Methode bereit. Holen Sie sich alle aktuellen Zustände

通过connect,绑定需要的state以及Action Creator到你的组件的props上,这样组件就可以通过props来调用Action Creator,或者根据不同props来render()不同的组件。

代码:


mapStateToProps({ newState }) {
      const value = newState[name];//name: newState.name
      return {
       name,
      };
     },
Nach dem Login kopieren


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHP中文网。

相关推荐:

如何理解 redux

JavaScript技巧中关于react-redux中connect()方法详细解析

在React中使用Redux的实例详解

Das obige ist der detaillierte Inhalt vonMethoden zum Migrieren einer Datenbank zu SQL Server mithilfe von EF Core in der .NET Core-Klassenbibliothek_Praktische Tipps. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So aktivieren Sie die Speicherintegritätsfunktion von Core Isolation in Windows 11 So aktivieren Sie die Speicherintegritätsfunktion von Core Isolation in Windows 11 May 10, 2023 pm 11:49 PM

Microsofts Windows 11 2022 Update (22H2) aktiviert standardmäßig den Speicherintegritätsschutz von CoreIsolation. Wenn Sie jedoch eine ältere Version des Betriebssystems ausführen, beispielsweise Windows 11 2022 Update (22H1), müssen Sie diese Funktion manuell aktivieren. Aktivieren Sie die Speicherintegritätsfunktion von CoreIsolation in Windows 11. Für Benutzer, die sich mit Core Isolation nicht auskennen: Es handelt sich um einen Sicherheitsprozess, der grundlegende Kernaktivitäten unter Windows vor Schadprogrammen schützen soll, indem er sie im Speicher isoliert. Dieser Prozess gewährleistet in Kombination mit der Speicherintegritätsfunktion

So migrieren Sie den WeChat-Chatverlauf auf ein neues Telefon So migrieren Sie den WeChat-Chatverlauf auf ein neues Telefon Mar 26, 2024 pm 04:48 PM

1. Öffnen Sie die WeChat-App auf dem alten Gerät, klicken Sie unten rechts auf [Ich], wählen Sie die Funktion [Einstellungen] und klicken Sie auf [Chat]. 2. Wählen Sie [Chat-Verlaufsmigration und -Sicherung], klicken Sie auf [Migrieren] und wählen Sie die Plattform aus, auf die Sie das Gerät migrieren möchten. 3. Klicken Sie auf [Zu migrierende Chats auswählen], klicken Sie unten links auf [Alle auswählen] oder wählen Sie die Chat-Datensätze selbst aus. 4. Klicken Sie nach der Auswahl unten rechts auf [Start], um sich mit dem neuen Gerät bei diesem WeChat-Konto anzumelden. 5. Scannen Sie dann den QR-Code, um mit der Migration der Chat-Datensätze zu beginnen. Benutzer müssen nur warten, bis die Migration abgeschlossen ist.

Was bedeutet Computerkern? Was bedeutet Computerkern? Sep 05, 2022 am 11:24 AM

Kern hat in Computern zwei Bedeutungen: 1. Der Kern, auch Kern genannt, ist der wichtigste Teil der CPU. Alle Berechnungen, die Annahme von Speicherbefehlen und die Verarbeitung von Daten der CPU werden vom Kern durchgeführt. Core ist der Prozessorname von Intel. Core ist die Prozessormarke, die Intel nach dem Pentium-Prozessor eingeführt hat. Derzeit werden Core-Prozessoren der zwölften Generation herausgebracht.

Linux und Docker: Wie migriere und synchronisiere ich Container zwischen Hosts? Linux und Docker: Wie migriere und synchronisiere ich Container zwischen Hosts? Jul 29, 2023 pm 02:52 PM

Linux und Docker: Wie migriere und synchronisiere ich Container zwischen Hosts? Zusammenfassung: Docker ist eine beliebte Containerisierungstechnologie, die eine leichte Virtualisierungslösung bietet. In einer Multi-Host-Umgebung ist es eine sehr häufige Anforderung, Container zwischen Hosts zu migrieren und zu synchronisieren. In diesem Artikel wird erläutert, wie Sie mit Linux und Docker eine hostübergreifende Migration und Synchronisierung von Containern implementieren und einige Beispielcodes als Referenz bereitstellen. Einführung Der Aufstieg der Containerisierungstechnologie macht die Anwendungsbereitstellung und -migration flexibler und effizienter. auf mehreren Hosts

So migrieren und integrieren Sie Projekte in GitLab So migrieren und integrieren Sie Projekte in GitLab Oct 27, 2023 pm 05:53 PM

So migrieren und integrieren Sie Projekte in GitLab. Einführung: Im Softwareentwicklungsprozess ist die Projektmigration und -integration eine wichtige Aufgabe. Als beliebte Code-Hosting-Plattform bietet GitLab eine Reihe praktischer Tools und Funktionen zur Unterstützung der Projektmigration und -integration. In diesem Artikel werden die spezifischen Schritte für die Projektmigration und -integration in GitLab vorgestellt und einige Codebeispiele bereitgestellt, um den Lesern ein besseres Verständnis zu erleichtern. 1. Projektmigration Bei der Projektmigration wird die vorhandene Codebasis von einem Quellcodeverwaltungssystem nach GitLab migriert

Wie sind die Berufsaussichten von C#? Wie sind die Berufsaussichten von C#? Oct 19, 2023 am 11:02 AM

Ganz gleich, ob Sie Anfänger oder erfahrener Profi sind: Die Beherrschung von C# ebnet den Weg für Ihre Karriere.

Teilen Sie mehrere .NET-Open-Source-KI- und LLM-bezogene Projekt-Frameworks Teilen Sie mehrere .NET-Open-Source-KI- und LLM-bezogene Projekt-Frameworks May 06, 2024 pm 04:43 PM

Die Entwicklung von Technologien der künstlichen Intelligenz (KI) ist heute in vollem Gange und sie haben in verschiedenen Bereichen großes Potenzial und Einfluss gezeigt. Heute wird Dayao Ihnen 4 .NET Open-Source-KI-Modell-LLM-bezogene Projekt-Frameworks vorstellen und hofft, Ihnen einige Referenzen zu geben. https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.mdSemanticKernelSemanticKernel ist ein Open-Source-Softwareentwicklungskit (SDK), das für die Integration großer Sprachmodelle (LLM) wie OpenAI und Azure entwickelt wurde

So beheben Sie den thermischen Auslösefehler des Prozessors in Windows 11/10 [Fix] So beheben Sie den thermischen Auslösefehler des Prozessors in Windows 11/10 [Fix] Apr 17, 2023 am 08:13 AM

Die meisten Geräte wie Laptops und Desktops werden seit langem stark von jungen Gamern und Programmierern genutzt. Das System hängt manchmal aufgrund einer Anwendungsüberlastung. Dies zwingt Benutzer dazu, ihre Systeme herunterzufahren. Dies passiert hauptsächlich Spielern, die umfangreiche Spiele installieren und spielen. Wenn das System nach einem erzwungenen Herunterfahren versucht, zu starten, wird auf einem schwarzen Bildschirm ein Fehler angezeigt, wie unten dargestellt: Nachfolgend sind die Warnungen aufgeführt, die während dieses Startvorgangs erkannt wurden. Diese können in den Einstellungen auf der Seite „Ereignisprotokoll“ eingesehen werden. Warnung: Überhitzung des Prozessors. Drücken Sie eine beliebige Taste, um fortzufahren. ..Diese Art von Warnmeldungen werden immer dann ausgegeben, wenn die Prozessortemperatur eines Desktops oder Laptops den Temperaturschwellenwert überschreitet. Nachfolgend sind die Gründe aufgeführt, warum dies auf Windows-Systemen geschieht. Viele schwere Anwendungen sind in

See all articles