Ich versuche, eine DSL zu schreibenDesigning Fluent Interface-Methoden
Ich habe Methoden, die Strings zurückgeben, aber wenn ich die Saiten kombinieren möchte ich brauche ein + Symbol zu verwenden, aber ich würde die Methoden wie zusammen nennen, aber ich ist nicht sicher, wie es
ich habe Methoden zur Zeit zu erreichen, wie
MyStaticClass.Root() MyStaticClass.And() MyStaticClass.AnyInt()
der Strings zurückgeben
ich mag wäre in der Lage sein, zu tun
Root().And().AnyInt()
die zu einer Zeichenfolge führen
String Builder Append? Wie würde eine implizite Umwandlung aussehen, um das Ergebnis zu erhalten? Ist dieser Thread auch sicher? – Jon
'public static implizite Operatorzeichenfolge (Fluent f) {return f.ToString(); } '. Siehe http://msdn.microsoft.com/en-us/library/z5z9kes2.aspx –
@Jon, es sei denn, Sie planen, die gleiche Instanz aus mehreren Threads zu verwenden, Thread-Sicherheit ist kein Problem, um das Sie sich kümmern sollten. Fließende Schnittstellen werden normalerweise in einer einzigen Methode verwendet und dann verworfen. –