


asp.net mvc signalr analyse simple du processus de production de salle de discussion
Je connais la magie et le côté pratique de signalr depuis longtemps, mais je ne l'ai jamais essayé moi-même, je suis resté seulement dans des articles et j'ai lu quelques textes d'introduction simples. Je trouve que c'est très simple et facile à utiliser. .
Comme j'avais enfin un projet qui avait besoin de l'utiliser, j'ai décidé d'écrire un petit programme pour le tester et le mettre en pratique afin d'acquérir de vraies connaissances. Les articles écrits par d'autres présentent encore plus ou moins de différences en raison d'environnements différents ; (versions, etc.) Entrée et sortie.
Environnement : vs2013 / asp.net mvc 5 / signalr 2.2.1 / jquery 1.10.2
Deux premiers rendus :
Le système attribuera automatiquement un identifiant à la personne qui rejoint le salon de discussion, qui est l'identifiant unique de la personne (le vert est ce que l'utilisateur actuel a dit, l'orange est ce que les personnes autres que l'utilisateur actuel ont dit L'utilisateur a déclaré : Le sujet des instructions d'utilisation actuelles est différent selon les fenêtres, ne plaisantez pas. )
Ce qui suit est une description approximative des étapes de développement :
1.
Il est recommandé d'utiliser nuget pour l'installation, ce qui peut éviter bien des problèmes. Il existe également une configuration manuelle complète en ligne.
2. Modifier le fichier startup.cs
Au début, j'ai raté cette étape et j'ai constaté qu'elle était a toujours été généré Impossible de trouver /signalr/hubs, le navigateur affiche /signalr/hubs 400 not found
3 Créer un hub
Après que Nuget ait installé Signalr, il y aura des catégories de signaux correspondantes
.Nommez-le ChatHub, ou vous pouvez créer une classe normale et hériter de Microsoft.AspNet.SignalR.Hub.
Écrivez simplement une méthode Send (veuillez faire attention aux deux noms de méthode dans la case rouge)
4. 🎜> doit être référencé Trois scripts principaux :
signalr dépend de jquery, donc ces trois scripts sont cités dans un ordre strict, comme le montre la figure, et l'ordre ne peut être échangé.
Voici le contenu de la page (veuillez faire attention à plusieurs endroits dans la case rouge) :
chatHub : Il s'agit de la classe ChatHub créée, générée dans /signalr Le nom sous /hubs (la première lettre du nom de la classe est en minuscule par défaut)
Les utilisateurs peuvent également définir le leur
comme ceci Le nom du hub devient l'ensemble ChatHub (la première lettre était à l'origine en minuscule, mais maintenant elle est en majuscule)
chat.client.receiveMessage : recevoirMessage voici la définition Dans la classe ChatHub, Clients.All.receiveMessage sous la méthode Send, j'ai regardé certains documents et la méthode d'écriture ici est chat.receiveMessage, mais elle n'a aucun effet. , j'ai vu la définition du client. Cela peut être dû à différentes versions de signalr, donc tout le monde doit faire attention lors de son utilisation.
chat.server.send : L'envoi ici est la méthode Send définie sous la classe ChatHub. Il se peut également que pour les versions précédentes de signalr, la méthode d'utilisation soit chat.send.
5. Fin
À ce stade, un simple processus de développement se termine. Ouvrez deux fenêtres ou plus, vous pouvez envoyer des messages et discuter, essayez-le
Le style est purement aléatoire, l'écriture est irrégulière et désordonnée, donc je ne le publierai pas en détail pour déranger le public.
Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'apprentissage de chacun. J'espère également que tout le monde soutiendra le site Web PHP chinois.
Pour plus d'articles sur l'analyse du processus de production de salle de discussion simple asp.net mvc signalr, veuillez faire attention au site Web chinois PHP !

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Dans le langage C, les caractères spéciaux sont traités à travers des séquences d'échappement, telles que: \ n représente les pauses de ligne. \ t signifie le caractère d'onglet. Utilisez des séquences d'échappement ou des constantes de caractères pour représenter des caractères spéciaux, tels que char c = '\ n'. Notez que l'arrière-plan doit être échappé deux fois. Différentes plates-formes et compilateurs peuvent avoir différentes séquences d'échappement, veuillez consulter la documentation.

En C, le type de char est utilisé dans les chaînes: 1. Stockez un seul caractère; 2. Utilisez un tableau pour représenter une chaîne et se terminer avec un terminateur nul; 3. Faire fonctionner via une fonction de fonctionnement de chaîne; 4. Lisez ou sortant une chaîne du clavier.

Les méthodes d'utilisation des symboles dans la couverture du langage C Couverture arithmétique, l'affectation, les conditions, la logique, les opérateurs de bits, etc. Les opérateurs arithmétiques sont utilisés pour les opérations mathématiques de base, les opérateurs d'affectation sont utilisés pour les opérations et les opérations de la soustraction, la multiplication et les opérations de division, les opérations BIT sont utilisé pointeurs nuls, marqueurs de fin de fichier et valeurs non nucères.

La différence entre le multithreading et l'asynchrone est que le multithreading exécute plusieurs threads en même temps, tandis que les opérations effectuent de manière asynchrone sans bloquer le thread actuel. Le multithreading est utilisé pour les tâches à forte intensité de calcul, tandis que de manière asynchrone est utilisée pour l'interaction utilisateur. L'avantage du multi-threading est d'améliorer les performances informatiques, tandis que l'avantage des asynchrones est de ne pas bloquer les threads d'interface utilisateur. Le choix du multithreading ou asynchrone dépend de la nature de la tâche: les tâches à forte intensité de calcul utilisent le multithreading, les tâches qui interagissent avec les ressources externes et doivent maintenir la réactivité de l'interface utilisateur à utiliser asynchrone.

Dans le langage C, la principale différence entre Char et WCHAR_T est le codage des caractères: Char utilise ASCII ou étend ASCII, WCHAR_T utilise Unicode; Char prend 1 à 2 octets, WCHAR_T occupe 2-4 octets; Char convient au texte anglais, WCHAR_T convient au texte multilingue; Le char est largement pris en charge, WCHAR_T dépend de la prise en charge du compilateur et du système d'exploitation Unicode; Le char est limité dans la gamme de caractères, WCHAR_T a une gamme de caractères plus grande et des fonctions spéciales sont utilisées pour les opérations arithmétiques.

Dans le langage C, la conversion de type char peut être directement convertie en un autre type par: Casting: Utilisation de caractères de casting. Conversion de type automatique: Lorsqu'un type de données peut accueillir un autre type de valeur, le compilateur le convertit automatiquement.

Le Array Char stocke des séquences de caractères en C et est déclaré Char Array_name [Taille]. L'élément d'accès est passé par l'opérateur d'indice, et l'élément se termine par le terminateur nul «\ 0», qui représente le point final de la chaîne. Le langage C fournit une variété de fonctions de manipulation de cordes, telles que strlen (), strcpy (), strcat () et strcmp ().

Il n'y a pas de fonction de somme intégrée dans le langage C, il doit donc être écrit par vous-même. La somme peut être obtenue en traversant le tableau et en accumulant des éléments: Version de boucle: la somme est calculée à l'aide de la longueur de boucle et du tableau. Version du pointeur: Utilisez des pointeurs pour pointer des éléments de tableau, et un résumé efficace est réalisé grâce à des pointeurs d'auto-incitation. Allouer dynamiquement la version du tableau: allouer dynamiquement les tableaux et gérer la mémoire vous-même, en veillant à ce que la mémoire allouée soit libérée pour empêcher les fuites de mémoire.
