Als «c#» getaggte Fragen

C # ist eine multiparadigmatisierte, verwaltete, durch Müll gesammelte objektorientierte Programmiersprache, die von Microsoft parallel zur .NET-Plattform erstellt wurde


2
Warum verwenden die Anweisung "using" und die Anweisung "using" dasselbe Schlüsselwort in C #?
Die usingRichtlinie ermöglicht uns den Zugriff auf Typen ohne Verwendung ihrer vollqualifizierten Namen: using MyNamespace.Foo.Bar; Die usingAnweisung fungiert als syntaktischer Zucker für try/ finallyBlöcke, die sicherstellen, dass Objekte ordnungsgemäß entsorgt werden: using(var x = new MyDisposableClass()) { ... } Diese beiden Situationen scheinen nichts miteinander zu tun zu haben. Warum …
10 c#  statement 

2
Ist es schlecht, Klassen zu erstellen, deren einziger Zweck darin besteht, implizit in eine andere Klasse konvertiert zu werden?
Stellen Sie sich eine Situation vor, in der wir eine Bibliothek verwenden, mit der Sie CircleObjekte erstellen können, in der Sie den Radius und den Mittelpunkt des Kreises angeben können, um ihn zu definieren. Aus irgendeinem Grund wird jedoch auch ein erforderlicher flavourParameter benötigt . Nehmen wir jetzt an, ich …

3
Verwenden von Schnittstellen für lose gekoppelten Code
Hintergrund Ich habe ein Projekt, das von der Verwendung eines bestimmten Hardwaregerätetyps abhängt, während es nicht wirklich wichtig ist, wer dieses Hardwaregerät herstellt, solange es das tut, wofür ich es brauche. Abgesehen davon weisen sogar zwei Geräte, die dasselbe tun sollen, Unterschiede auf, wenn sie nicht vom selben Hersteller hergestellt …

3
Stubbing-Eigenschaften mit privaten Setzern für Tests
Wir haben das Objekt public class MyObject{ protected MyObject(){} public string Property1 {get;private set;} public string Property2 {get;private set;} public string Property3 {get;private set;} public string Property4 {get;private set;} public string Property5 {get;private set;} public string Property6 {get;private set;} public string Property7 {get;private set;} public string Property8 {get;private set;} public …


1
So vermeiden Sie gesprächige Schnittstellen
Hintergrund: Ich entwerfe eine Serveranwendung und erstelle separate DLLs für verschiedene Subsysteme. Nehmen wir zur Vereinfachung an, ich habe zwei Subsysteme: 1) Users2)Projects Die öffentliche Benutzeroberfläche der Benutzer hat eine Methode wie: IEnumerable<User> GetUser(int id); Die öffentliche Oberfläche von Projects verfügt über eine Methode wie: IEnumerable<User> GetProjectUsers(int projectId); Wenn wir …

4
Absichtlich Ausnahmen für die Verwendung von Fang auslösen
Ist für ein typisches Beispiel if...elsemit Ausnahmebehandlung das folgende Beispiel eine empfohlene Vorgehensweise, um Codeduplizierungen zu vermeiden? try { if (GetDataFromServer()) { return ProcessData(); } else { throw new Exception(); } catch(Exception ex) { return null; } anstatt... try { if (GetDataFromServer()) { return ProcessData(); } else { return null; …

7
Verschachtelte Entitäten und Berechnung der Eigenschaft "Blattentität" - SQL- oder NoSQL-Ansatz
Ich arbeite an einem Hobbyprojekt namens Menü- / Rezeptverwaltung. So sehen meine Wesenheiten und ihre Beziehungen aus. A Nutrienthat Eigenschaften CodeundValue An Ingredienthat eine Sammlung vonNutrients A Recipehat eine Sammlung von Ingredientsund kann gelegentlich eine Sammlung von anderen habenrecipes A Mealhat eine Sammlung von RecipesundIngredients A Menuhat eine Sammlung vonMeals …


4
Ist die Verwendung von internen Bereichsblöcken innerhalb einer Funktion ein schlechter Stil?
Es gibt einige (recht seltene) Fälle, in denen das Risiko besteht, dass: Wiederverwendung einer Variablen, die nicht wiederverwendet werden soll (siehe Beispiel 1), oder Verwenden einer Variablen anstelle einer anderen, semantisch nah (siehe Beispiel 2). Beispiel 1: var data = this.InitializeData(); if (this.IsConsistent(data, this.state)) { this.ETL.Process(data); // Alters original data …

2
Eigene Benennung der Eigenschaft zur Darstellung einer Zeichenfolge, die mit der Nummer beginnt
Bei einigen Kamerametadaten unter Windows File Propertiesgibt es (zusammen mit einigen weiteren) zwei mit den PropertiesNamen Brennweite und 35 mm Brennweite . Ich entwickle Software, die diese beiden nutzt Properties. Bisher habe ich einen PropertyNamen FocalLengthfür den ersten erstellt, aber ich kann anscheinend keinen richtigen Namen für den anderen finden. …

4
Warum sollte ich in Unit Testing zweimal ein Repository erstellen?
Neulich habe ich ein wenig über Unit Testing gelesen und einige Beispiele gesehen, in denen Leute eine Repository-Schnittstelle (dh IExampleRepository) erstellen und dann das echte Repository ( public class ExampleRepository : IExampleRepository) und ein Repository für Unit-Tests ( FakeExampleRepository : IExampleRepository) erstellen . In der IExampleRepositoryimplementierten sie die gleichen Methoden …



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.