C # è un linguaggio di programmazione orientato agli oggetti multiparadigm, gestito e raccolto in modo indesiderato creato da Microsoft in parallelo con la piattaforma .NET
Supponiamo di avere un metodo lungo come questo: public void SomeLongMethod() { // Some task #1 ... // Some task #2 ... } Questo metodo non ha parti ripetitive che dovrebbero essere spostate in un metodo separato o in una funzione locale. Ci sono molte persone (incluso me) che pensano …
Quando si analizza l'input dell'utente, si consiglia generalmente di non generare eccezioni ma piuttosto di utilizzare metodi di convalida. Nel .NET BCL, questa sarebbe la differenza tra, ad esempio, int.Parse(genera un'eccezione su dati non validi) e int.TryParse(restituisce falsedati non validi). Sto progettando il mio Foo.TryParse(string s, out Foo result) e …
Ho molte classi principali che richiedono ISessionContext del database, ILogManager per log e IService utilizzati per comunicare con un altro servizio. Voglio usare l'iniezione di dipendenza per questa classe usata da tutte le classi principali. Ho due possibili implementazioni. La classe principale che accetta IAmbientContext con tutte e tre le …
In ASP.Net Core, trovo che l' Claimsautorizzazione sia un metodo molto non concreto. Possiamo aggiungere qualsiasi cosa come ClaimTypee ClaimValueaccoppiare; gruppi, nome, cognome, brithdate, canAccessThisURI, isEditor, ecc. Tuttavia, questo approccio (che memorizza tutto ciò che può essere archiviato come attestazioni) creerà una tabella di richieste enorme che include il 50% …
In questa serie di post sul blog , Eric Lippert descrive un problema nella progettazione orientata agli oggetti usando maghi e guerrieri come esempi, dove: abstract class Weapon { } sealed class Staff : Weapon { } sealed class Sword : Weapon { } abstract class Player { public Weapon …
Recentemente stavo rivedendo alcune classi statiche "utility bag" in stile Helper che fluttuavano attorno ad alcune grandi basi di codice C # con cui lavoro, cose fondamentalmente come il seguente frammento molto condensato: // Helpers.cs public static class Helpers { public static void DoSomething() {} public static void DoSomethingElse() {} …
Stiamo utilizzando StructureMap in un nuovo progetto di sviluppo software. Uno dei membri del team ha implementato un test unitario che testa sostanzialmente la configurazione del contenitore StructureMap . Lo fa nel modo seguente; Conta il numero di istanze di assembly configurati per le classi nel nostro spazio dei nomi …
Stiamo effettuando molti test unitari e refactoring dei nostri oggetti di business e sembra che io abbia opinioni molto diverse sul design di classe rispetto ad altri colleghi. Un esempio di classe di cui non sono fan: public class Foo { private string field1; private string field2; private string field3; …
Quando si confrontano valori in virgola mobile per l'uguaglianza, esistono due approcci diversi: NaNnon essere uguale a se stesso, che corrisponde alla specifica IEEE 754 . NaNessendo uguale a se stesso, che fornisce la proprietà matematica della Riflessività che è essenziale per la definizione di una relazione di equivalenza I …
Ho provato a utilizzare il modello di comando per implementare Annulla e Ripeti nel mio progetto public abstract class Command { protected Form Receiver { set; get; } protected HtmlElement Element { set; get; } abstract public void ReDo(); abstract public void UnDo(); public Command(Form receiver) { this.Receiver = receiver; …
Abbiamo questo codice che, una volta semplificato, assomiglia a questo: public class Room { public Client Client { get; set; } public long ClientId { get { return Client == null ? 0 : Client.Id; } } } public class Client { public long Id { get; set; } } …
Mi sono imbattuto in questo interessante articolo: How I Came to Love COM Interoperability su CodeProject, che mi ha fatto pensare ... L'autore sostiene che non vogliono alcun COM-ities nella loro libreria .NET perché toglie la bellezza della loro libreria .NET. Invece, preferirebbero scrivere una libreria Interop separata che esponga …
Supponiamo di avere varie entità nel mio modello (usando EF), ad esempio Utente, Prodotto, Fattura e Ordine. Sto scrivendo un controllo utente in grado di stampare i riepiloghi degli oggetti entità nella mia applicazione in cui le entità appartengono a un set prestabilito, in questo caso dico che i riepiloghi …
Comunemente gli oggetti dominio hanno proprietà che possono essere rappresentate da un tipo incorporato ma i cui valori validi sono un sottoinsieme dei valori che possono essere rappresentati da quel tipo. In questi casi, il valore può essere memorizzato utilizzando il tipo incorporato ma è necessario assicurarsi che i valori …
Ho fatto delle ricerche prima di pubblicare questa domanda. Tra le altre domande o post, uno di questi è fornito di seguito. Non sono riuscito a capire bene come determinare .. Oggetti business all'interno di un livello di accesso ai dati Ho un repository e i livelli aziendali chiamano il …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.