Punti rapidi per qualcuno che potrebbe conoscere la risposta: c'è uno snippet o uno strumento che può generare rapidamente un codice template per assegnare tutti i campi pubblici e/o le proprietà di un oggetto?C# - snippet o template per assegnare rapidamente tutti i campi/proprietà?
Esempio:
public class SomeBloatedClass
{
public string SomeField1 { get; set; }
public int SomeField2 { get; set; }
// etc...
public string SomeField99 { get; set; }
}
public class TestHarness
{
public SomeBloatedClass CreateTestObject()
{
// Is there a snippet/macro/template that can generate the code to assign
// all public fields/properties so they can be manually assigned quickly?
// Something like this...?
// *Begin auto-generated code
SomeBloatedClass s = new SomeBloatedClass();
s.SomeField1 = ;
s.SomeField2 = ;
// etc..
s.SomeField99 = ;
// *End auto-generated code
return s;
}
}
Strumenti di terze parti sono bene finché si integrano in Visual Studio.
Modifica: sto solo cercando di creare uno strumento con istruzioni di assegnazione vuote che potrei modificare manualmente con i valori appropriati. Idealmente, la soluzione utilizza il meccanismo integrato di snippet per passare da un'istruzione all'altra tramite il tasto TAB - Non potrei rappresentarlo chiaramente usando l'editor di StackOverflow, ma se hai usato snippet dovresti sapere cosa intendo).
"assegnare tutti i campi pubblici e/o proprietà di un oggetto". Con Cosa? –
Cerca codice modello per creare istruzioni di assegnazione. I valori effettivi dovrebbero essere modificati manualmente. Ad esempio, con snippet di codice VS, è possibile passare da un valore all'altro. Sarebbe molto, molto più rapido inserire un valore e quindi premere TAB per passare al valore successivo senza dover codificare ciascuna delle singole istruzioni di assegnazione. –
Non sei sicuro di poter generare automaticamente il codice ma puoi dare i valori predefiniti dei campi quindi costruisci l'oggetto come questo SomeBloatedClass s = new SomeBloatedClass() {SomeField1 = "someData", SomeField2 = 1, SomeField99 = "someData"}; –