Maison  >  Article  >  développement back-end  >  Collection de questions d'entretien ASP.NET

Collection de questions d'entretien ASP.NET

怪我咯
怪我咯original
2017-03-30 14:02:121225parcourir

Collection de questions d'entretien ASP.NET

1 Décrivez brièvement les droits d'accès des modificateurs privés, protégés, publics et internes.
Réponse .privé : les membres privés ne sont accessibles qu'à l'intérieur de la classe.
protégé : membres protégés, accessibles au sein de la classe et dans les classes héritées .
public : membres publics, entièrement publics, aucune restriction d'accès.
interne : accessible dans le même espace de noms .

2. Répertoriez plusieurs façons de transférer des valeurs entre les pages ASP.NET.
Réponse. 1. Utilisez QueryString, tel que....?id=1;
Variable 3. Utilisez Server.Transfer 3. Les règles pour une colonne de nombres sont les suivantes : 1, 1, 2, 3, 5, 8, 13, 21. , 34.... .. Pour savoir quel est le 30ème chiffre, utilisez l'algorithme
récursif
pour l'implémenter.
Réponse : public class MainClass { public static void Main()
{
Console.WriteLine(Foo(30));
public static int Foo( int i)
{
if (i <= 0)
return 0
else if(i > 0 && i <= 2)
return 1; sinon return Foo(i -1) + Foo(i - 2);
}
}

4.
Qu'est-ce qu'un délégué en C#
 ? L'
événement
est-il une sorte de délégation ?
Réponse : Un délégué peut remplacer une méthode comme paramètre dans une autre méthode. Un délégué peut être compris comme une référence pointant vers une
fonction
.
Oui, c'est un type spécial de délégation 5. La différence entre la dérogation et la surcharge
Réponse : La différence entre la
la dérogation et la surcharge. La surcharge est une méthode du même nom. Si les paramètres ou les types de paramètres sont différents, plusieurs surcharges sont effectuées pour s'adapter aux différents besoins
override est la réécriture des fonctions dans la classe de base. S'adapter aux besoins. 6. Si vous devez transmettre des valeurs de variables dans un système de structure B/S, mais que Session,
Cookie
et Application ne peuvent pas être utilisés, combien de méthodes devez-vous gérer il?
Réponse :
this.Server.Transfer
7. Veuillez parcourir par programme tous les contrôles TextBox de la page et lui attribuer la valeur string.Empty ? Réponse :
foreach (contrôle System.Windows.Forms.Control dans this.Controls)
{
if (le contrôle est System.Windows.Forms.TextBox)
{
Système .Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control;
tb.Text = String.Empty;
}
}

8. un algorithme de
Tri à bulles
 ?
Réponse :
int [] array = new int
; int temp = 0; for (int i = 0; i < array.Length - 1; i++)
{
for (int j = i + 1 ; j < array.Length ; j++)
{
if (array [j] < array [i])
{
temp = tableau [i] ;
tableau [i] = tableau [j] ;
tableau [j] = temp
}
}
}

9. Décrivez le processus d'implémentation de l'implémenteur
index
en C#. Peut-il être indexé uniquement sur la base de nombres ?
Réponse : Non. N’importe quel type peut être utilisé.

10. Trouvez la valeur de l' expression suivante et notez une ou plusieurs méthodes d'implémentation auxquelles vous pensez : 1-2+3-4+……+m
Réponse :
int Num = this.TextBox1.Text.ToString() ;
int Sum = 0 ; for (int i = 0 ; i < Num + 1 ; i++) {
if((i%2) == 1)
{
Somme += i ;
}
else
{
Somme = Somme - I
}
}
System.Console.WriteLine(Sum.ToString());
System.Console.ReadLine();

11. Est-il développé en utilisant plusieurs couches de structure ? Quelle est la relation entre chaque couche et pourquoi est-elle superposée ainsi ?
Réponse : Il existe généralement 3 couches
Couche d'accès aux données, couche métier et couche de présentation.
La couche d'accès aux données effectue des ajouts, des suppressions, des vérifications et des modifications à la base de données.
La couche métier est généralement divisée en deux couches. La couche d'apparence métier implémente la communication avec la couche de présentation, et la couche de règles métier implémente la
sécurité
des mots de passe des utilisateurs, etc.
La couche de présentation permet d'interagir avec les utilisateurs, tels que les utilisateurs qui ajoutent des formulaires.
Avantages : division claire du travail, organisation claire, facile à
déboguer et évolutif. Inconvénients : Coût accru.

12. Dans l'exemple suivant utilisant System; class A
{
public A()
{
PrintFields();
}
public virtual void PrintFields(){}
}
class B:A
{
int x=1; >public B()
{
y=-1;
}
public override void PrintFields()
{
Console.WriteLine("x={0},y= {1}",x,y);
}
Quelle sortie est produite lors de l'utilisation de new B() pour créer une instance de B ?
Réponse : X=1,Y=0;x= 1 y = -1

13. Qu'est-ce que le domaine d'application ?
Réponse : Le domaine d'application peut être compris comme un processus léger. Jouer un rôle de sécurité. Cela demande peu de ressources.

14. Quelles sont les explications pour CTS, CLS et CLR ?
Réponse : CTS : Common Language System. CLS : Spécification de langage commun. CLR : Common Language Runtime.

15. Qu'est-ce que l'emballage et le déballage ?
Réponse : Convertir de l'interface de type valeur

en boxe de type référence. Tapez la conversion de la référence en unboxing de type valeur. 16. Qu'est-ce que le code réglementé ?
Réponse : dangereux : code non géré. Courez sans passer par le CLR.

17. Qu'est-ce qu'un système de types forts ?
Réponse : RTTI : système d'identification de type.

Quelles classes sont nécessaires pour lire et écrire des bases de données dans 18.net ? Leur rôle ?
Réponse : DataSet : stockage de données.
DataCommand : Exécuter la commande d'instruction.
DataAdapter : une collection de données, remplie de mots.

19.Quelles sont les méthodes d'authentification pour ASP.net ? Quelles sont les différences ?
Réponse : 10. Windows (par défaut) utilise IIS...From (formulaire) utilise le compte...Passport (clé)

20. Qu'est-ce que la technologie Code-Behind ?
Réponse : Coder après la plantation.

21. En .net, que signifient les accessoires ?
Réponse : Assemblage. (Langage intermédiaire, données sources, ressources, liste d'assemblage)

22. Quelles sont les méthodes couramment utilisées pour appeler WebService ?
Réponse : 1. Utilisez l'outil de ligne de commande
WSDL
.exe. 2. Utilisez l'option de menu Ajouter une référence Web dans VS.NET
23.. Comment fonctionne Net Remoting ?
Réponse : Le serveur envoie un numéro de processus et un numéro de domaine de programme au client pour déterminer l'emplacement de l'
objet
. 24. En C#, string str = null et string str = "" Veuillez essayer d'utiliser du texte ou des images pour expliquer la différence.
Réponse : string str = null ne lui alloue pas d'espace mémoire, mais string str = "" alloue de l'espace mémoire avec une longueur de
chaîne
vide. 25. Veuillez développer les similitudes et les différences entre les classes et les structures dans dotnet ?
Réponse : la classe peut être instanciée et est un type de référence, qui est alloué sur le tas de mémoire. Struct est un type de valeur, qui est alloué sur la pile de mémoire
26. , veuillez compléter les extraits de code suivants dans le contrôle utilisateur :
namespace test
{
public délégué void OnDBOperate();
public class UserControlBase : System.Windows.Forms.UserControl
{
événement public OnDBOperate OnNew ;
privatevoidtoolBar_ButtonClick(objectsender,System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
if(e.Button.Equals(BtnNew))
{
// Veuillez compléter le code ci-dessous pour appeler l'événement OnNew signé par le délégué OnDBPerate.
}
}
}
Réponse : if( OnNew != null )
OnNew( this, e );

Analysez le code suivant et remplissez le blanks
string strTmp = "abcdefgXXXX";
int i= System.Text.Encoding.Default.GetBytes(strTmp).Length;
int j= strTmp.Length
Après le code ci-dessus est exécuté, i= j=
Réponse : i=13,j=10

28. Dans le serveur SQLSERVER, il y a deux champs ID et LastUpdateDate dans la table donnée, l'ID représente le numéro de transaction mis à jour. , LastUpdateDate Indique l'heure du serveur au moment de la mise à jour. Veuillez utiliser une instruction SQL pour obtenir le numéro de la dernière transaction mise à jour
Réponse : Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1)

29. Selon la sécurité des threads Connaissances pertinentes, analysez le code suivant, cela provoquera-t-il un blocage lorsque i>10 est appelé lorsque la méthode de test est appelée et expliquez brièvement la raison ?
public void test(int i)
{
lock(this)
{
if (i>10)
{
i--; i);
}
}
}
Réponse : aucun blocage ne se produira (mais une chose est que int est passé par valeur, donc à chaque fois qu'il change, ce n'est qu'une copie, donc il n'y aura pas de blocage. Mais si int est remplacé par un objet, un blocage se produira)

30 Parlez brièvement de votre compréhension des technologies de communication à distance et de services Web sous le framework Microsoft .NET et de leurs applications pratiques. .
Réponse : WS peut principalement utiliser HTTP pour pénétrer les pare-feu. L'accès à distance peut utiliser TCP/IP et la transmission binaire pour améliorer l'efficacité.

31. L'entreprise nécessite le développement d'un composant qui hérite de la classe System.Windows.Forms.ListView et nécessite les fonctions spéciales suivantes : en cliquant sur l'en-tête de colonne de chaque colonne du ListView, la vue peut être réorganisée en fonction de la valeur de chaque ligne de la colonne cliquéeAfficher Toutes les lignes (triées de la même manière que DataGrid). En fonction de vos connaissances, veuillez parler brièvement de vos idées
Réponse : selon l'en-tête de colonne cliqué, l'ID de la colonne est extrait, trié en fonction de l'ID, puis lié au ListView.

32. Étant donné le fichier XML suivant, complétez l'organigramme de l'algorithme.



>


;/DriverC>

Veuillez dessiner un organigramme qui traverse tous les noms de fichiers (FileName) (veuillez utiliser un algorithme récursif).
Réponse :
void FindFile( Directory d)
{
FileOrFolders = d.GetFileOrFolders();
foreach( FileOrFolder fof in FileOrFolders )
{
if( fof is File )
You Found a file;
else if ( fof is Directory )
FindFile( fof );
}

33. les 31e au 40e enregistrements de la table A (SQLServer, utilisez l'ID à croissance automatique comme clé primaire. Remarque : les ID ne peuvent pas être consécutifs.
Réponse : Solution 1 : sélectionnez les 10 premiers * de A où l'ID n'est pas inclus (sélectionnez top 30 id de A)
Solution 2 : sélectionnez les 10 premiers * de A où id > (sélectionnez max(id) from (sélectionnez les 30 meilleurs id de A) comme A)

34.
Les langages orientés objet​​ont des propriétés, des propriétés _ et des propriétés
Réponse : encapsulation, héritage, polymorphisme
35. Les objets accessibles à l'aide de la traversée foreach doivent implémenter une interface ou. déclarez un type de méthode. Réponse : IEnumerable, GetEnumerator.

36. Pourquoi y a-t-il un GC ?
Réponse : le programmeur n'a pas à se soucier de la gestion de la mémoire, car le Le garbage collector sera automatiquement géré. Pour demander le garbage collection, vous pouvez appeler l'une des méthodes suivantes :
System.gc()
Runtime.getRuntime().gc()

37. String s = new String( "xyz"); Combien d'objets String ont été créés ?
Réponse : Deux objets, l'un est "xyx" et l'autre est un objet de référence pointant vers "xyx"

38.classe abstraite et interface. Quelle est la différence ?
Réponse :
Une classe qui déclare l'existence d'une méthode sans l'implémenter est appelée une
classe abstraite
(classe abstraite), qui est utilisé pour créer une classe qui incarne certains comportements de base et déclarer une méthode pour cette classe, mais il n'est pas possible de créer une instance de la classe abstraite. variable dont le type est une classe abstraite et faites-la pointer vers l’une des sous-classes concrètes. Ne peut pas avoir de
constructeur
abstrait ou de méthode abstraite statique . Les sous-classes de la classe Abstract fournissent des implémentations pour toutes les méthodes abstraites de leur classe parent, sinon elles seraient également des classes abstraites. Au lieu de cela, implémentez la méthode dans une sous-classe. D'autres classes conscientes de son comportement peuvent implémenter ces méthodes dans leur classe. L'interface est une variante de la classe abstraite. Dans une interface, toutes les méthodes sont abstraites. L'héritage multiple peut être obtenu en implémentant une telle interface. Toutes les méthodes de l'interface sont abstraites et aucune d'entre elles n'a de corps de programme. Les interfaces ne peuvent définir que des variables de membre final statiques. L'implémentation d'une interface est similaire au sous-classement, sauf que la classe d'implémentation ne peut pas hériter du comportement de la définition de l'interface. Lorsqu'une classe implémente une interface particulière, elle définit (c'est-à-dire donne le corps du programme) toutes les méthodes de cette interface. Il peut alors appeler les méthodes de l'interface sur n'importe quel objet de la classe qui implémente l'interface. Puisqu'il existe des classes abstraites, cela permet d'utiliser le nom de l'interface comme type de variable de référence. La liaison dynamique normale prendra effet. Les références peuvent être converties vers ou depuis des types d'interface, et l'opérateur instanceof peut être utilisé pour déterminer si la classe d'un objet implémente l'interface. 39. Devez-vous utiliser run() ou start() pour démarrer un thread ?
Réponse : Pour démarrer un thread, appelez la méthode start() pour rendre le processeur virtuel représenté par le thread dans un état exécutable, ce qui signifie qu'il peut être planifié et exécuté par la JVM. Cela ne signifie pas que le thread s'exécutera immédiatement. La méthode run() peut générer un indicateur obligatoire
exit
pour arrêter un thread. 40. Les interfaces peuvent-elles hériter d'interfaces ? Les classes abstraites peuvent-elles implémenter des interfaces ?Réponse : Les interfaces peuvent hériter des interfaces. Les classes abstraites peuvent implémenter des interfaces et savoir si les classes abstraites peuvent hériter des classes d'entités, mais le principe est que la classe d'entité doit avoir un constructeur clair.

41. Le constructeur Constructeur peut-il être remplacé ?
Réponse : Le constructeur Constructeur ne peut pas être hérité, donc le remplacement ne peut pas être remplacé, mais la surcharge peut être remplacée.

42. La classe String peut-elle être héritée ?
Réponse : La classe String est une classe finale et ne peut pas être héritée.

43. Il y a une instruction return dans try {}, donc le code dansfinal {} immédiatement après cet essai sera-t-il exécuté, avant ou après le retour
Réponse : Il ? sera exécuté avant le retour.

44. Deux objets ont la même valeur (x.equals(y) == true), mais ils peuvent avoir des codes de hachage différents.
Réponse : Non, ils ont le même hachage. code.

45. Le commutateur peut-il agir sur l'octet, peut-il agir sur le long, peut-il agir sur la chaîne
Réponse : Dans switch(expr1), expr1 est un Entier ? expression. Par conséquent, les paramètres transmis aux instructions switch et case doivent être int, short, char ou byte. Ni long ni string ne peuvent être utilisés sur le switch.

47. Lorsqu'un thread entre dans une méthode synchronisée d'un objet, d'autres threads peuvent-ils entrer dans d'autres méthodes de l'objet
Non, une méthode synchronisée d'un objet n'est accessible que par un seul thread.

48. La méthode abstraite peut-elle être à la fois statique, native et synchronisée
Réponse : Aucune.

49. Est-ce que List, Set et Map héritent de l'interface Collection ?
Réponse : List et Set sont des Maps, pas des Maps

50. alors que dois-je utiliser ? Quelle méthode est utilisée pour distinguer la duplication ? Devons-nous utiliser == ou equals() ? méthode pour distinguer la duplication. equals() détermine si deux ensembles sont égaux.
Les méthodes equals() et == déterminent si la valeur de référence pointe vers le même objet. equals() est remplacée dans la classe afin de renvoyer une valeur vraie lorsque le contenu et les types des deux objets distincts correspondent.

51.
ArrayLa méthode length() existe-t-elle ? String a-t-il la méthode length() ? Réponse : Les tableaux n'ont pas la méthode length(), mais ont l'
attribut de length. String a la méthode length().
52. Quelle est la différence entre sleep() et wait() ?
Réponse : La méthode sleep() est une méthode qui arrête le thread pendant un certain temps. Une fois l’intervalle de veille expiré, le thread ne reprend pas nécessairement son exécution immédiatement. En effet, à ce moment-là, d'autres threads peuvent être en cours d'exécution et ne sont pas programmés pour abandonner l'exécution, à moins que (a) le thread de "réveil" ait une
priorité plus élevée (b) soit en cours d'exécution. le fil est bloqué pour d'autres raisons.
wait() est une interaction de thread. Si le thread émet un appel wait() à un objet de synchronisation x, le thread suspendra l'exécution et l'objet appelé entrera dans l'état d'attente jusqu'à ce qu'il soit réveillé ou que le temps d'attente expire.

53.short s1 = 1 ; s1 = s1 + 1 ; Qu'est-ce qui ne va pas ? short s1 = 1 ; Qu'est-ce qui ne va pas ?
Réponse : court s1 = 1 ; ; Il y a une erreur s1 est de type short, s1+1 est de type int et ne peut pas être explicitement converti en type short. Il peut être modifié comme s1 =(short)(s1 + 1). court s1 = 1 ; s1 += 1 est correct.

54. Parlez de la différence entre final, enfin et finaliser.
Réponse :
final-modifier (mot-clé) Si une classe est déclarée finale, cela signifie qu'elle ne peut plus dériver de nouvelles sous-classes et ne peut pas être héritée en tant que classe parent. Par conséquent, une classe ne peut pas être déclarée à la fois abstraite et finale. Déclarez les variables ou les méthodes comme finales pour vous assurer qu'elles ne seront pas modifiées pendant l'utilisation. Les variables déclarées comme finales doivent recevoir une valeur initiale lors de leur déclaration, et ne peuvent être lues que dans les références ultérieures et ne peuvent pas être modifiées. Les méthodes déclarées comme finales ne peuvent également être utilisées que et ne peuvent pas être surchargées
finally-fournir un bloc final pour effectuer toute opération de nettoyage pendant la
gestion des exceptions. Si une exception est levée, la clause catch correspondante est exécutée et le contrôle passe au bloc final (s'il y en a un). nom de la méthode de finalisation. La technologie Java permet d'utiliser la méthode finalize() pour effectuer le travail de nettoyage nécessaire avant que le garbage collector n'efface l'objet de la mémoire. Cette méthode est appelée par le garbage collector sur cet objet lorsqu'il détermine que l'objet n'est pas référencé. Il est défini dans la classe Object, donc toutes les classes en héritent. Les sous-classes remplacent la méthode finalize() pour organiser les ressources système ou effectuer d'autres travaux de nettoyage. La méthode finalize() est appelée sur cet objet avant que le garbage collector
supprime l'objet .
55. Comment gérer des centaines de milliers de données simultanées ?
Réponse : Utilisez une procédure stockée ou une transaction. Mettre à jour en même temps lors de l'obtention de l'identifiant maximum. Notez que la clé primaire n'est pas en mode d'auto-incrémentation. Cette méthode ne dupliquera pas la clé primaire lorsqu'elle est utilisée simultanément. Pour obtenir l'identifiant maximum, une procédure stockée est requise. 🎜>
56. Y a-t-il des BUG majeurs dans Session, et quelles méthodes Microsoft a-t-il proposé pour les résoudre ?
Réponse : en raison du mécanisme de recyclage des processus dans IIS, la session sera perdue si le système est occupé. Vous pouvez utiliser le serveur Sate ou la base de données SQL Server pour stocker la session. Cependant, cette méthode est plus lente et ne peut pas capturer la FIN. événement de la Session.

57. Quelle est la différence entre un processus et un fil ?
Réponse : le processus est l'unité d'allocation et de planification des ressources dans le système ; le thread est l'unité de planification et de répartition du processeur. Un processus peut avoir plusieurs threads, et ces threads partagent les ressources de ce processus.

58. Quelle est la différence entre tas et pile ?
Réponse :
Pile : automatiquement allouée et libérée par le compilateur. Les variables définies dans le corps d'une fonction se trouvent généralement sur la pile.
Heap : généralement alloué et libéré par le programmeur. Ce qui est alloué à l'aide de fonctions d'allocation de mémoire telles que new et malloc se trouve sur le tas.

59. Quel est le rôle de l'ajout de statique avant les variables membres et les fonctions membres ?
Réponse : elles sont appelées variables membres constantes et fonctions membres constantes, également appelées variables membres de classe et fonctions membres de classe. Utilisé pour refléter le statut de la classe respectivement. Par exemple, les variables membres de classe peuvent être utilisées pour compter le nombre d'instances de classe, et les fonctions membres de classe sont responsables de ces actions statistiques.

60.ASP. NET par rapport à ASP, quelles sont les principales améliorations ?
Réponse : le formulaire interprété asp, le formulaire compilé aspx, améliore les performances et aide à protéger le code source.

61. Générez un tableau int d'une longueur de 100 et insérez-y au hasard 1 à 100, et il ne peut pas être répété.
int[] intArr=new int[100];
ArrayList myList=new ArrayList();
Random rnd=new Random(); {
int num=rnd.Next(1,101);
if(!myList.Contains(num))
myList.Add(num);
for(int i=0); ;i<100;i++)
intArr[i]=(int)myList[i];

62 Veuillez expliquer plusieurs méthodes de transmission de paramètres entre les pages couramment utilisées dans .net, et dites Identifiez-les. forces et faiblesses.
Réponse : session(viewstate) est simple, mais facile à perdre
application global
le cookie est simple, mais peut ne pas être pris en charge et peut être falsifié
input ttype="hidden" est simple, peut être falsifié
Les paramètres de l'url sont simples, affichés dans la barre d'adresse et ont une longueur limitée
La base de données est stable et sûre, mais les performances sont relativement faibles

Veuillez indiquer la signification. du GAC ?
Réponse : Assemblage global
cache
.

64. Combien y a-t-il de façons d'envoyer une requête au serveur ? Réponse : obtenir, publier. Get est généralement une méthode de lien et post est généralement une méthode de bouton.
65. Quelle est la différence entre DataReader et Dataset ?
Réponse : l'un est un curseur en lecture seule qui ne peut qu'avancer, et l'autre est un tableau en mémoire.

66. Combien d'étapes le processus de développement logiciel comporte-t-il généralement ? Quel est le rôle de chaque étape ?
Réponse : Analyse des besoins,
Architecture
Conception, écriture de code, assurance qualité, déploiement

67 Quelle est la signification des deux mots-clés using et new en c# Veuillez écrire votre quoi ? est-ce que ça veut dire savoir ? La directive using et l'instruction new créent une instance new masque les méthodes dans la classe de base. Réponse : using introduit un espace de noms ou utilise des ressources non gérées new crée une nouvelle instance ou masque les méthodes de la classe parent

68. Pour traiter une chaîne, supprimez d'abord les espaces au début et à la fin du. string Supprimez, s'il y a des espaces consécutifs au milieu de la chaîne, ne conservez qu'un seul espace, c'est-à-dire que plusieurs espaces sont autorisés au milieu de la chaîne, mais le nombre d'espaces consécutifs ne peut pas dépasser un
Réponse : chaîne. inputStr=" xx xx ";
inputStr=Regex.Replace(inputStr.Trim()," *"," ");

69. Pourquoi?
int i=5;
int j=5;
if (Object.ReferenceEquals(i,j))
Console.WriteLine("Equal"); .WriteLine("Not Equal");
Réponse : Pas égal, car les objets comparés sont

70. Qu'est-ce que l'injection SQL et comment l'empêcher ? Veuillez donner un exemple.
Réponse : utilisez des mots-clés SQL pour attaquer le site Web. Filtrer les mots-clés' etc.

71. Qu'est-ce que la réflexion ?
Réponse : obtenir dynamiquement des informations sur l'assemblage

72. Comment écrire un
Modèle de conception

en utilisant Singleton Réponse : nouveau dans l'attribut statique, constructeur privé

73. .Qu'est-ce que le pool d'applications ?
Réponse : les applications Web, similaires au Thread Pool, améliorent les performances de concurrence. 74. Qu'est-ce qu'une fonction virtuelle ? Qu'est-ce qu'une fonction abstraite ?
Réponse : Fonction virtuelle : une fonction qui n'est pas implémentée et qui peut être héritée et remplacée par des sous-classes. Fonction abstraite : fonction qui stipule que sa sous-classe non virtuelle doit être implémentée et doit être remplacée.

75. Qu'est-ce que XML ?
Réponse : XML est un langage de balisage extensible. Langage de balisage extensible. Les marques font référence à des symboles d'information que les ordinateurs peuvent comprendre. Grâce à ces marques, les ordinateurs peuvent traiter des articles contenant diverses informations. Comment définir ces balises, vous pouvez choisir un langage de balises accepté au niveau international, tel que HTML, ou vous pouvez utiliser un langage de balises comme XML qui est librement décidé par les personnes concernées. C'est l'extensibilité du langage. XML est simplifié et modifié à partir de SGML. Il utilise principalement XML, XSL et XPath, etc.

76. Qu'est-ce qu'un service Web ? UDDI ?
Réponse : Le service Web est un composant modulaire distribué et basé sur un réseau. Il effectue des tâches spécifiques et adhère à des spécifications techniques spécifiques. Ces spécifications permettent au service Web d'interagir avec d'autres composants compatibles.
L'objectif d'UDDI est d'établir des normes pour le commerce électronique ; UDDI est un ensemble de normes de mise en œuvre de centres d'enregistrement d'informations distribués et basés sur le Web pour les services Web, et comprend également un ensemble de normes de mise en œuvre qui permettent aux entreprises de fournir leurs propre enregistrement de service Web pour permettre à d'autres entreprises de découvrir la norme de mise en œuvre du protocole d'accès.
 
77. Que sont les contrôles utilisateur dans ASP.net ?
Réponse : les contrôles utilisateur sont généralement utilisés lorsque le contenu est principalement statique ou peut légèrement changer. L'utilisation des contrôles utilisateur est relativement importante, mais la fonction est beaucoup plus puissante.

78. Énumérez la technologie XML et ses applications que vous connaissez
Réponse : XML est utilisé pour la configuration et pour la sauvegarde des types de données statiques. Les services Web sont les plus exposés au XML. .et config

79.Quels sont les objets couramment utilisés dans ADO.net ? Décrivez chacun.
Réponse : Objet de connexion à la base de données de connexion
Commande de base de données
Lecteur de données DataReader
DataSet Ensemble de données

80. Qu'est-ce que la technologie code-behind.
Réponse : Fichiers avec trois suffixes ASPX, RESX et CS, il s'agit de la séparation du code. Il réalise la séparation du code HTML et du code serveur. Il facilite l'écriture et l'organisation du code

81. et qu'est-ce que c'est ?
Réponse : protocole d'accès aux objets simple, protocole d'acceptation d'objet simple. Il utilise XML comme structure d'encodage de base et est construit sur les protocoles de communication existants (tels que http, mais on dit que MS travaille sur l'architecture la plus basse de Soap sur tcp/ip) Un protocole qui standardise l'utilisation des Web Services..

82. La différence entre propriété et attribut en C#, quelles sont leurs utilisations, et quels sont les avantages de ce mécanisme ?
Réponse : L'un est un attribut, utilisé pour accéder aux champs d'une classe, et l'autre est une caractéristique, utilisée pour identifier des propriétés supplémentaires des classes, des méthodes, etc.

83. et HTML
Réponse : 1. XML fait la distinction entre les lettres majuscules et minuscules, contrairement au HTML.
2. En HTML, vous pouvez omettre les balises de fermeture telles que

ou si le contexte indique clairement où se termine la clé de paragraphe ou de liste. En XML, la balise fermante ne doit pas être omise.
3. En XML, les éléments qui ont une seule balise sans balise de fermeture correspondante doivent se terminer par un caractère /. De cette façon, l'analyseur sait qu'il ne doit pas rechercher la balise de fermeture.
4. En XML, les valeurs d'attribut doivent être placées entre guillemets. En HTML, les guillemets sont facultatifs.
5. En HTML, vous pouvez avoir des noms d'attributs sans valeurs. En XML, tous les attributs doivent avoir des valeurs correspondantes.

Qu'est-ce que l'opérateur ternaire en 84.c# ?
Réponse : ? :.

85. Lorsque l'entier a est attribué à un objet objet , l'entier a sera-t-il ?
Réponse : Emballage.

86. Quelles sont les formes _accessibles des membres de la classe ?
Réponse : this.;new Class().Method;

87.public static const int A=1; Qu'est-ce que c'est?
Réponse : const ne peut pas être modifié avec static.

88.float f=-123.567F; int i=(int)f;La valeur de i est maintenant_
Réponse : -123.

89. Quel est le mot-clé de la déclaration du délégué ?
Réponse : délégué

90. Quelles sont les caractéristiques des classes modifiées avec scellé ?
Réponse : Scellé et ne peut pas être hérité.

91. Tous les contrôles utilisateur personnalisés dans Asp.net doivent hériter de
Réponse : Contrôle.

92. Dans .Net, toutes les classes sérialisables sont marquées comme _?
Réponse : [sérialisable]

93. Dans le code géré par .Net, nous n'avons pas à nous soucier de la vulnérabilité de la mémoire. , est-ce à cause de ça ?
Réponse : GC.

94. Y a-t-il des erreurs dans le code ci-dessous ? _
en utilisant System ;
class A
{
public virtual void F(){
Console.WriteLine("A.F");
}
}
résumé class B:A
{
public abstract override void F(); Réponse : le remplacement abstrait ne peut pas être modifié ensemble
} // new public abstract void F(); Lorsque T déclare uniquement un constructeur d'instance privé, en dehors du texte du programme de T, une nouvelle classe peut (peut ou ne peut pas) être dérivée de T, et toute instance de T ne peut pas (peut ou ne peut pas) être directement créée.
Réponse : Non, non.

96. Y a-t-il une erreur dans le code suivant ?
commutateur (i){
case() : Réponse : //la condition case() ne peut pas être vide
CaseZero();
break;
case 1 :
CaseOne(); :
dufault; Réponse : //faux, le format est incorrect
CaseTwo();
break
}

Dans .Net, classe System.Web.UI. Le .Page peut-il être hérité ?
Réponse : Oui.

Quel est le mécanisme de
gestion des erreurs
de 98..net ? Réponse : Le mécanisme de gestion des erreurs .net adopte la structure try->catch->finally. Lorsqu'une erreur se produit, elle est générée couche par couche jusqu'à ce qu'un Catch correspondant soit trouvé.
99. Y a-t-il une erreur lors de l'utilisation de la déclaration de l'opérateur et seul == est déclaré ?
Réponse : vous souhaitez modifier Equale et GetHash() en même temps ? doit surcharger "! ="

100. Comment définir les messages définis par l'utilisateur en .net (C# ou vb.net) et traiter ces messages dans le formulaire.
Réponse : Surcharger la fonction DefWndProc dans le formulaire pour traiter les messages :
protected override void DefWndProc ( ref System.WinForms.Message m )
{
switch(m.msg)
{
case WM_Lbutton :
///L'utilisation de la fonction Format de string est différente de celle de CString dans MFC
string message = string.Format("Message reçu ! Les paramètres sont : {0}, { 1 }",m.wParam,m.lParam);
MessageBox.Show(message); ///Afficher une
boîte de message
break; case UTILISATEUR :
code de traitement
par défaut :
base.DefWndProc(ref m);///Appelez la fonction de classe de base pour traiter les messages non personnalisés.
break;
}
}

101. Comment annuler la fermeture d'un formulaire en .net (C# ou vb.net).
Réponse : private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel=true
}

102. vb.net), quelle est la différence entre Appplication.Exit ou Form.Close ?
Réponse : L'une consiste à quitter toute l'application et l'autre à fermer l'un des formulaires.

103. En C#, il existe une variable double, telle que 10321.5, telle que 122235401.21644. Comment la valeur monétaire peut-elle être générée en fonction des habitudes des différents pays ? Par exemple, les États-Unis utilisent 10 321,50 $ et 122 235 401,22 $, tandis qu'au Royaume-Uni, ils utilisent 10 321,50 £ et 122 235 401,22 £
Réponse : System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-US" );
//System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-GB"); est le type de devise britannique
decimal y = 99999999999999999999999999999m
string str = String.Format; (MyCulture," My montant = {0:c}", y);

104. Un certain mot de passe n'utilise qu'un total de 5 lettres K, L, M, N et O. Les mots dans le Les mots de passe sont disposés de gauche à droite. Les mots de passe doivent suivre les règles suivantes :
(1) La longueur minimale d'un mot de passe est de deux lettres, qui peuvent être identiques ou différentes
(2) K ne peut pas être le première lettre d'un mot
(3) Si L apparaît, il apparaît plus d'une fois
(4) M ne peut pas être la dernière ou l'avant-dernière lettre
(5) K apparaît, alors N doit apparaître
(6) O Si c'est la dernière lettre, L doit apparaître
Question 1 : Laquelle des lettres suivantes peut être placée après O dans LO pour former un mot de passe de 3 lettres ?
A) K B)L C) M D) N
Réponse : B

Question 2 : Si les lettres pouvant être obtenues sont K, L, M, alors un mot de passe à deux lettres qui peut être formé Quel est le nombre total ?
A) 1 B) 3 C) 6 D) 9
Réponse : A

Question 3 : Lequel des éléments suivants est un mot de passe ?
A) KLLN B) LOML C) MLLO D)NMKO
Réponse : C

8 62-63=1 L'équation ne tient pas, veuillez déplacer un nombre (les signes moins et les égal ne peuvent pas. être déplacé) ), pour que l'équation soit vraie, comment se déplacer ?
Réponse : 62 déplacé à la 6ème puissance de 2

105 Pour un tel type d'énumération :
enum Color:byte
{
Rouge,
Vert, Bleu,
orange
}
Réponse : string[] ss=Enum.GetNames(typeof(Color));
byte[] bb=Enum.GetValues(typeof(Color)) ; 🎜>
106. Quelle est la différence entre propriété et attribut en C#, quelles sont leurs utilisations et quels sont les avantages de ce mécanisme ?
Réponse : attribut : classe de base des attributs personnalisés ; propriété : attribut dans la classe

107. C# peut-il effectuer des opérations directes sur la mémoire ?
Réponse : Sous .net, .net fait référence à la fonction garbage collection (GC), qui remplace les programmeurs. Cependant, en C#, la méthode Finalize ne peut pas être implémentée directement, mais dans le
destructeur
Appelez le. Méthode Finalize() de la classe de base

108.ADO. Quelles sont les principales améliorations de NET par rapport à ADO et ainsi de suite ? Réponse : 1 : Ado.net ne s'appuie pas sur le fournisseur ole db, mais utilise le programme fourni par l'hébergement .net 2 : N'utilise pas com3 : Il ne prend plus en charge les curseurs dynamiques et les jeux côté serveur. Vous pouvez déconnecter la connexion. Gardez l'ensemble de données actuel disponible 5 : Conversion de type forte 6 : Prise en charge XML
109. Écrivez une page HTML pour implémenter les fonctions suivantes Lorsque vous faites un clic gauche sur la page, "Bonjour". s'affiche, et lors d'un clic droit, "Le clic droit est interdit" s'affiche. Et fermez automatiquement la page après 2 minutes.
Réponse :

110. Décrivez brièvement ASP. NET
cycle de vie Réponse : initialiser le chargement de l'état d'affichage, le traitement des données de publication, le chargement, l'envoi de la notification de modification de publication, le traitement de l'événement de publication, le pré-rendu, l'état de sauvegarde, le rendu, l'élimination, le déchargement

Can Anonymous Inner. La classe étend (hérite) d'autres classes et implémente l'interface (interface) ?
Réponse : Non, l'interface peut être implémentée

112.Classe imbriquée statique et plus vous pouvez en dire plus sur la différence entre la classe interne, mieux c'est
Réponse : La classe imbriquée statique est une classe interne déclarée comme statique, qui peut être instanciée sans s'appuyer sur des instances de classe externes. Habituellement, les classes internes doivent être instanciées après l’instanciation de la classe externe.

113., la différence entre & et &&.
& est le
opérateur binaire, qui signifie opération AND au niveau du bit, && est le opérateur logique, qui signifie ET logique (et ).
114.La différence entre HashMap et Hashtable.
Réponse : HashMap est une implémentation légère de Hashtable (implémentation non thread-safe). Ils complètent tous les deux l'interface Map. La principale différence est que HashMap autorise les valeurs de clé vides (nulles) (
key). Puisqu'il n'est pas thread-safe et peut être plus efficace que Hashtable 115.short s1 = 1; Qu'est-ce qui ne va pas ?
Réponse : short s1 = 1 ; s1 = s1 + 1 ; (Le résultat de l'opération s1+1 est de type int et doit être
forcé à
type) short s1; = 1; s1 += 1; (peut compiler correctement)
116. La méthode Overloaded peut-elle changer le type de la valeur de retour
Réponse : La méthode Overloaded peut changer le type de la valeur de retour ?

117. Quelle est la différence entre une erreur et une
exception
Réponse : une erreur indique un problème grave lorsque la récupération n'est pas impossible mais difficile. Par exemple, débordement de mémoire. Il est impossible d’attendre d’un programme qu’il puisse gérer une telle situation. l'exception représente un problème de conception ou de mise en œuvre. Autrement dit, cela représente une situation qui ne se produirait jamais si le programme fonctionnait normalement.

118. Quelle est la différence entre <%# %> et <% %>
Réponse : <%# %> représente la source de données liée
<% %> est un bloc de code côté serveur

119. ) et Quelle est la plus grande différence entre les outils de développement que vous utilisiez auparavant (.Net 1.0 ou autre) ? Les idées de développement (modèle/architecture) que vous avez utilisées sur la plate-forme précédente peuvent être transplantées dans ASP.NET 2.0 (ou ont été intégrées dans ASP.NET 2.0)
Réponse : 1 ASP.NET 2.0 a mis du code encapsulé et empaqueté, donc beaucoup de code est réduit par rapport à la version 1.0 pour la même fonction.
2 Prend en charge à la fois la séparation du code et l'intégration des pages du code côté serveur. Dans la version 1.0 précédente, l'aide des invites .NET n'était disponible que dans les fichiers de code séparés et. n'a pas pu être utilisé dans des fichiers de code séparés. La page intègre le code côté serveur pour obtenir des conseils d'aide
3 Lors du basculement entre le code et l'interface de conception, 2.0 prend en charge le positionnement du curseur
4 Lors de la liaison. données, pagination des tables, mise à jour, suppression et autres opérations. Tout peut être utilisé visuellement, ce qui est pratique pour les débutants
5 Plus de 40 nouveaux contrôles ont été ajoutés à ASP.NET, réduisant ainsi la charge de travail

120. Quelle est la différence entre la surcharge et l'écrasement ?
Réponse : 1. La substitution de méthode est la relation entre les sous-classes et les classes parentes, qui est une relation verticale ; la surcharge de méthode est la relation entre les méthodes de la même classe, qui est une relation horizontale
2. Remplacer uniquement une relation peut être généré par une seule méthode ou seulement une paire de méthodes ; la surcharge de méthode est la relation entre plusieurs méthodes.
3. L'écrasement nécessite la même liste de paramètres ; la surcharge nécessite des listes de paramètres différentes.
4. Dans la relation d'écrasement, le corps de la méthode à appeler est déterminé en fonction du type de l'objet (le type d'espace de stockage correspondant à l'objet) ; liste de paramètres et liste de paramètres formelle lors de l'appel.

121. Décrivez le processus d'implémentation de l'indexeur en C#. Peut-il être indexé uniquement sur la base de nombres ?
Réponse : Non. N’importe quel type peut être utilisé.

122. En C#, string str = null et string str = " " Veuillez essayer d'utiliser du texte ou des images pour expliquer la différence.
Réponse : null n'a pas de référence d'espace ;
" " est une chaîne avec un espace de 0 ;

Analysez le code suivant et remplissez les espaces
string strTmp = "abcdefgXXXX. ";
int i= System.Text.Encoding.Default.GetBytes(strTmp).Length;
int j= strTmp.Length;
Une fois le code ci-dessus exécuté, i= j=
Réponse :i=13.j=10

124. Dans le serveur SQLSERVER, il y a deux champs ID et LastUpdateDate dans la table donnée, table1. ID représente le numéro de transaction mis à jour et LastUpdateDate représente l'heure du serveur au moment de la mise à jour. Veuillez utiliser une instruction SQL pour obtenir la dernière transaction mise à jour. number
Réponse : Sélectionnez ID FROM table1 Où LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1)

Analysez le code suivant.
test de vide statique public (string ConnectString)

{

System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(
conn.ConnectionString); = ConnectString;
essayez

{
conn.Open();
…….
}
catch(Exception Ex)
{
MessageBox. Show(Ex.ToString());
}
finalement
{

if (!conn.State.Equals(ConnectionState.Closed))
conn.Close();
}
}
Excusez-moi

1) Le code ci-dessus peut-il utiliser correctement le pool de connexions ?

Réponse : Réponse : Si la chaîne de connexion entrante est exactement la même, le pool de connexions peut être utilisé correctement. Mais la même signification signifie que le nombre d’espaces dans le trait d’union est exactement dans le même ordre.

2) Concernant la méthode de gestion des exceptions utilisée dans le code ci-dessus, toutes les exceptions de la méthode de test peuvent-elles être détectées et affichées ?

Réponse : Vous ne pouvez intercepter les exceptions que dans les connexions à la base de données. (Dans enfin et catch, s'il existe d'autres opérations qui peuvent provoquer des exceptions, vous devez également utiliser try et catch. Donc, en théorie, toutes les exceptions ne le seront pas. capturé Capture. )

126. L'entreprise nécessite le développement d'un composant qui hérite de la classe System.Windows.Forms.ListView et nécessite les fonctions spéciales suivantes : en cliquant sur l'en-tête de colonne du ListView, la valeur de chaque ligne de la colonne cliquée peut être Réorganise toutes les lignes de la vue (tri similaire à un DataGrid). En fonction de vos connaissances, veuillez parler brièvement de vos idées :
Réponse : Selon l'en-tête de colonne cliqué, extrayez l'ID de la colonne, triez en fonction de l'ID et liez-le au ListView

127 .Qu'est-ce que WSE ? Quelle est la dernière version ?
Réponse : le package WSE (Web Service Extension) fournit la dernière garantie de sécurité du service WEB. La dernière version est la 2.0.

128. Dans l'exemple suivant
using System;
class A
{
public A(){
PrintFields(); virtual void PrintFields(){}
}
class B:A
{
int x=1
int y
public B(){
y= - 1;
}
public override void PrintFields(){
Console.WriteLine("x={0},y={1}",x,y); 🎜>


-->

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