>>It actually also needed closeSalespoint and closeOperator. I sent both as out parameters but I was thinking I may create the above as a class instead with these properties. Do you think it will be a better solution or 4 out parameters is not bad?
>
>
>Dunno - there are several ways
>
>Viv's personal limit is about 5
>Another option mentioned is to have the method return a Tuple - only inconvenience of a tuple is that the properties do not have meaningful names
>
>Another option suggested is to create a class. I would opt for a private nested class in that case
Can you show how the private nested class idea looks like, please?
This is what I currently have (last night did a few re-factoring operations). Thought today to keep re-factoring, but got some other work to do (in VFP).
private void ParseDetails(String cDetails, String currentOperator,
String currentSalespoint, out String closeOperator, out String closeSalespoint, out DateTime startTime, out DateTime endTime)
{
closeOperator = cDetails.ParseStringFromSqml("CLOSE_OP");
if (String.IsNullOrWhiteSpace(closeOperator))
closeOperator = currentOperator;
closeSalespoint = cDetails.ParseStringFromSqml("CLOSE_SP");
if (String.IsNullOrWhiteSpace(closeSalespoint))
closeSalespoint = currentSalespoint;
startTime = cDetails.ParseDateTimeFromSqml("START_TIME");
endTime = cDetails.ParseDateTimeFromSqml("END_TIME");
}
If it's not broken, fix it until it is.
My Blog