Articles of génériques

Générique avec plusieurs classes

J’essaie de créer cette méthode générique pour simplifier les choses, mais je pense avoir tout gâché! Pouvez-vous aider avec mon problème? Cela comstack: private ssortingng ConcatenateText(MyEntity myEntity) where T1 : Supplier, new() where T1 : Employee, new() where T2 : SupplierDepartment, new() where T2 : EmployeeDepartment, new() { T1 p = new T1(); T2 r […]

Comment les génériques C # / .Net connaissent-ils leurs types de parameters?

En C #, une fonction ou une classe générique connaît les types de ses parameters génériques. Cela signifie que les informations de type dynamic, telles qu’elles is ou as qu’elles sont disponibles (contrairement à Java où elles ne le sont pas). Je suis curieux de savoir comment le compilateur fournit cette information de type aux […]

Méthode d’parsing générique sans boxe

J’essaie d’écrire une méthode Parse générique qui convertit et retourne une valeur fortement typée à partir de NamedValueCollection. J’ai essayé deux méthodes mais ces deux méthodes passent par la boxe et le déballage pour obtenir la valeur. Est-ce que quelqu’un sait un moyen d’éviter la boxe? Si vous voyiez cela en production, n’aimeriez-vous pas cela? […]

Qu’est-ce que l’action ?

Qu’est-ce que Action , comment peut-on l’utiliser?

Modèle d’usine avec génériques ouverts

Dans ASP.NET Core, l’une des choses que vous pouvez faire avec l’infrastructure d’dependency injection de Microsoft est de lier les “génériques ouverts” (types génériques non liés à un type concret), comme suit: public void ConfigureServices(IServiceCollection services) { services.AddSingleton(typeof(IRepository), typeof(Repository)) } Vous pouvez également utiliser le modèle d’usine pour hydrater les dépendances . Voici un exemple […]

C #: IEnumerable, GetEnumerator, un exemple simple et simple, s’il vous plaît!

Essayer de créer une classe très simple qui implémente get enumerator, mais échoue follement à cause du manque d’exemples simples / non fonctionnels. Tout ce que je veux faire est de créer un wrapper autour d’une structure de données (dans ce cas, une liste, mais j’aurai peut-être besoin d’un dictionnaire par la suite) et d’append […]

Que signifie “où T: somevalue”?

Que veut dire where T : somevalue ? Je viens de voir un code qui dit where T : Atsortingbute . Je pense que cela a quelque chose à voir avec les génériques mais je ne suis pas sûr de ce que cela signifie ou ce qu’il fait. Est-ce que quelqu’un sait?

Utilisation de génériques avec XmlSerializer

Lors de l’utilisation de la sérialisation XML en C #, j’utilise un code comme celui-ci: public MyObject LoadData() { XmlSerializer xmlSerializer = new XmlSerializer(typeof(MyObject)); using (TextReader reader = new StreamReader(settingsFileName)) { return (MyObject)xmlSerializer.Deserialize(reader); } } (et code similaire pour la désérialisation). Cela nécessite un casting et n’est pas vraiment sympa. Existe-t-il un moyen, directement dans […]

Utilisation de la liste en C # (Génériques)

C’est une question assez élémentaire, mais je ne me suis jamais penché sur les génériques et je me suis retrouvé dans la nécessité de l’utiliser. Malheureusement, je n’ai pas le temps à présent de parcourir des tutoriels et les réponses que j’ai trouvées à des questions connexes jusqu’à présent ne sont pas ce que l’on […]

Puis-je obtenir des métadonnées spécifiques d’un object Func ?

Considérons le code suivant: ssortingng propertyName; var dateList = new List() { DateTime.Now }; propertyName = dateList.GetPropertyName(dateTimeObject => dateTimeObject.Hour); // I want the propertyName variable to now contain the ssortingng “Hour” Voici la méthode d’extension: public static ssortingng GetPropertyName(this IList list, Func func) { //TODO: would like to dynamically determine which // property is being […]