Maison  >  Article  >  développement back-end  >  asp .net entretien questions et réponses partage

asp .net entretien questions et réponses partage

零下一度
零下一度original
2017-06-23 15:04:123411parcourir

1. La différence entre ref et out

2 Il y a trois balises a sans identifiant, sans nom et sans classe. Comment sélectionner la deuxième balise a, utilisez jquert pour sélectionner

.
<a href ="#这是第一个" </a>
<a href ="#这是第二个"> </a>
<a href ="#这是第三个"> </a>

<script>$(function){
$("a:eq(1)").attr("href");
}</script>
Afficher le code

3. Quelle est la différence entre les collections, les collections génériques et arrays

4. Quelle est la différence entre string et stringbuilder

L'objet string est immuable Chaque fois que la classe string est utilisée, un nouvel objet string doit être créé dans la mémoire. , qui nécessite cet objet. Allouez un nouvel espace et stringbuilder modifiera la chaîne d'origine lors des opérations de concaténation de chaînes, améliorant ainsi les performances !

Pour faire simple, string est immuable et stringbuilder est variable.

5. Quelle est la différence entre webapi, webservice et wcf ? Pourquoi utiliser webapi

6, comment optimiser le code

7, comment optimiser la base de données, comment optimiser la requête ?

8. Si deux personnes exploitent une donnée en même temps, comment la géreriez-vous ?

9. Connaissez-vous le cache ? Comment l'utiliser ?

La mise en cache est une technologie qui échange de l'espace contre du temps. En termes simples, cela signifie que les données que vous obtenez sont stockées dans la mémoire pendant une période de temps courte. période de temps, le serveur ne peut pas Pour lire une base de données ou une source de données réelle, lire les données que vous stockez en mémoire

asp. net Le cache dans Cache est principalement divisé en trois types principaux : le cache de pages, le cache de source de données et le cache de données personnalisé.

Cache de données : ajoutez des entrées fastidieuses à une collection de cache d'objets et stockez-les de manière clé-valeur. Nous pouvons définir l'expiration du cache, la priorité, les dépendances, etc. en utilisant la méthode Cache.Insert().

Référence d'implémentation spécifique

10, comment gérer la gestion globale des exceptions de? Comment l’as-tu capturé ?

Gérer les exceptions via le nœud webconfig customErrors

  <system.web>
<!--添加customErrors节点 定义404跳转页面-->
 <customErrors mode="On">
      <error statusCode="404" redirect="/Error/Path404" />
    </customErrors>
 </system.web>
Afficher le code

Plusieurs méthodes pour détecter les exceptions

1. Capturez les exceptions non gérées via HttpModule [Recommandé]

2. Capturer les exceptions non gérées dans Global

3. Capture d'exceptions au niveau de la page

Référence de code spécifique

11. Comment savoir si cet utilisateur est connecté ?

Logique pour vérifier si l'utilisateur est connecté :

                                                                                                                                                                       2) Si l'utilisateur enregistre le mot de passe de connexion, mémorisez le cookie, sinon définissez-le le cookie de l'utilisateur actuel à vider ;

3) Chaque fois que l'utilisateur doit se connecter en arrière-plan Lors de la demande, effectuez une vérification de l'état :

La séance existe-t-elle ? S'il existe, continuez à effectuer l'opération de demande et réinitialisez la durée de validité de la session, c'est-à-dire qu'elle a été terminée une fois 1);

Réponse simple : Vous pouvez utiliser Session pour juger, car de manière générale, vous devez stocker les informations de connexion de chaque utilisateur dans Session

Tant que la valeur de Session est vide ou a expiré, alors on peut dire que l'utilisateur a quitté !!

12. Application dans des projets ?

La réflexion consiste à obtenir dynamiquement l'assemblage.
Réflexion : Réflexion1) Utilisé lorsque la classe de base appelle une classe dérivée

2) Utilisé pour déterminer quelle classe appeler au moment de l'exécution

3) Pendant l'exécution, obtenez les informations sur la méthode d'attribut du constructeur de classe d'assemblage de module et les classes instanciées,

Appelez les constructeurs, les propriétés, les méthodes, les événements, les délégués Attendez... Après dynamiquement en instanciant le type, vous pouvez également utiliser la réflexion pour effectuer des opérations dessus
4) Si vous pouvez déterminer quelle classe appeler lors de l'écriture du code, alors bien sûr, appelez-la directement, d'accord.
Mais dans de nombreux cas (peut-être par souci de polyvalence), le type qui doit être appelé ne peut être déterminé qu'au moment de l'exécution, il est donc nécessaire d'utiliser la réflexion pour obtenir des informations liées au type

Pour faire simple, vous pouvez utiliser une chaîne pour faire ce que vous voulez au moment de l'exécution. Il s'agit en fait d'une usine universelle intégrée au framework .net
13. . Comment gérer une concurrence élevée ?
14. Qu'est-ce que le npoi ? Si quelqu'un utilise NPOI, vous pouvez lire et écrire des documents WORD/EXCEL sur un ordinateur sur lequel Office n'est pas installé ou un environnement correspondant. NPOI
est construit sur la version
POI 3.x, qui peut prendre en charge Word/Excel

sans installer

Office

Les documents sont lus et écrits.

(2) Avantages de l'utilisation de NPOI 1. Vous pouvez utiliser le framework entièrement gratuitement 2. Contient la plupart des fonctionnalités EXCEL (styles de cellules, formats de données, formules, etc.)

3. Services d'assistance technique professionnels (24*7/7 ) (pas gratuit)
4. Les formats de fichiers pris en charge incluent xls, xlsx, docx.
5 . Adopter une architecture de conception orientée interface (vous pouvez visualiser l' espace de noms de NPOI.SS)
6. Prend en charge l'importation et l'exportation de fichiers en même temps.
7. Basé sur .net 2.0 et prend également en charge les formats xlsx et docx (bien sûr, prend également en charge .net 4.0)
8. A un grand nombre de tests réussis et réels du monde entier Cas
9. Un grand nombre d'exemples de codes
11. Vous ne Il n'est pas nécessaire d'installer Office de Microsoft sur le serveur. Les problèmes de droits d'auteur peuvent être évités.
12. Il est plus pratique et convivial que l'API de Office PIA.
13. Vous n'avez pas à déployer beaucoup d'efforts pour maintenir NPOI, NPOI Équipe sera être constamment mis à jour et amélioréNPOI, absolument économique.
14. Non seulement vous pouvez opérer sur Excel, mais vous pouvez également effectuer les opérations correspondantes sur les fichiers doc et ppt
Utiliser Cas : Se référer au site du blog :

15. Quels sont les moyens de transférer des valeurs entre les pages ?

16. Le format de transmission des données json Si un ensemble de données est transmis, quel est le format ?

Les données transmises par json sont transmises en mode clé/valeur : { "firstName": "Brett" }

Si un ensemble de données est transmis. , le format comme suit ! !

{ "personnes": [

{ "firstName": "Brett", "lastName": "McLaughlin", "email": "aaaa" },

{ "firstName": "Jason", "lastName": "Hunter", "email": "bbbb"},

{ "firstName": "Elliotte", "lastName": "Harold ", "email": "cccc" }

]}

17. Qu'est-ce qu'un verrou de base de données et quels types de verrous existe-t-il ? Quelle est la fonction ? Comment utiliser ?

18. Quelle est la transaction ? Quand les transactions sont-elles utilisées ? Quels sont les avantages et les inconvénients du business ?

19. Qu'est-ce que l'injection de dépendance, quand est-elle utilisée et quels sont les avantages de son utilisation ?

20. Qu'est-ce que la communication par socket ?

21. Qu'est-ce qu'une file d'attente de messages ?

Recommander un très bon blog,

22, quel est le principe de fonctionnement d'ajax ?

Le principe d'ajax
XMLHttpRequest est le mécanisme de base d'ajax. Il a été introduit pour la première fois dans IE5 et est une technologie qui prend en charge les requêtes asynchrones. Pour faire simple, JavaScript peut adresser des requêtes au serveur et traiter les réponses en temps opportun sans bloquer l'utilisateur. N'obtenez aucun effet de rafraîchissement. Nous pouvons considérer le serveur comme une interface de données, qui renvoie un flux de texte brut. Bien entendu, ce flux de texte peut être au format XML, HTML, code Javascript ou simplement une chaîne. À ce stade, XMLHttpRequest demande cette page au serveur et le serveur écrit le résultat du texte dans la page. C'est la même chose que le processus de développement Web ordinaire. La différence est qu'une fois que le client a obtenu le résultat de manière asynchrone, ce n'est pas directement. affiché sur la page, mais est d'abord traité par javascript puis affiché sur la page. Comme pour de nombreux contrôles ajax populaires actuellement, tels que magicajax, etc., ils peuvent renvoyer d'autres types de données tels que DataSet. Ils encapsulent simplement les résultats de ce processus. En substance, il n'y a pas beaucoup de différence entre eux

.

23. Qu'est-ce que l'ORM ?

ORM, c'est-à-dire Object-Relational Mapping, sa fonction est de faire un mappage entre la base de données relationnelle et l'objet d'entité commerciale de cette manière, nous spécifiquement lors de l'exploitation. objets métier, vous n'avez plus besoin de gérer des instructions SQL complexes, il vous suffit d'exploiter les propriétés et les méthodes des objets.

Les frameworks ORM à grande échelle incluent EF et NHibernate. Jusqu'à présent, je n'ai été exposé qu'à EF, je résumerai les avantages et les inconvénients spécifiques d'EF plus tard ! !

24. Convertir les lignes de la base de données en colonnes et les colonnes en lignes

25.

26. Quelle est la différence entre convert.toint32 et int,parce ?

Convert.ToInt32 convertit le type de classe d'objet en type int

int.Parse convient pour convertir le type de classe de chaîne en type int

(1)Convert.ToInt32 a de nombreux paramètres et Int.Parse ne peut convertir que le type de chaîne.
(2)Parse convertit String en int, char, double ....etc., c'est-à-dire *.Parse(string). La valeur entre parenthèses doit être une chaîne.

27, Décrivez brièvement la différence entre "=, ==, ===" en JavaScript ?

=Affectation

== La comparaison est généralement égale à "3"==3 //Peut taper implicite conversion, true

===Comparez si l'égalité stricte "3"===3 //Comparez d'abord les types, puis comparez les valeurs, false

28. Quel est le résultat du code suivant ? Expliquez la raison
var a = null;
alert(typeof a);
var b;
alert(typeof b);
alert(c);

a est nul et est également un objet, donc typeof(a) est objet

b est uniquement déclaré mais pas initialisé, donc typeof(b) n'est pas défini.

c n'est pas défini, donc alert(c) provoquera une erreur.

29. Écrivez du code javascript pour fusionner les deux tableaux et supprimez le deuxième élément.

Utilisez la méthode concat pour fusionner des tableaux js, array1.concat(array2).

Pour supprimer des éléments, utilisez la méthode splice, splice(1,1), la fonction prototype splice(index,count), ce qui signifie supprimer un élément à partir de l'index 1 du tableau, c'est-à-dire c'est-à-dire supprimer les éléments du deuxième élément.

30. Décrivez brièvement la différence entre a.Equals(b) et a==b ?

La méthode Equals compare le contenu (si les valeurs sont égales), et == compare les adresses de référence (si elles pointent vers le même objet).

31. Combien de types de valeurs de retour existe-t-il dans l'énumération d'ASP.NET MVC ActionResult ?

Inclut principalement View (view), PartialView (view partielle), Content (content), Json (chaîne Json), Javascript (script js), File ( fichier) et plusieurs autres types.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn