Цель состоит в том, чтобы создать строку, которая представляет поля, и они могут быть разделены любыми символами, но порядок полей важен.
public class TransactionContext
{
public string BranchId { get; set; }
public string AccountId { get; set; }
public int UserId { get; set; }
public int CheckNum { get; set; }
public int NumberOfRecords { get; set; }
public string StartNextId { get; set; }
public string StartPreviousId { get; set; }
public string NextId { get; set; }
public string PreviousId { get; set; }
public int RecordCount { get; set; }
public string ToPageContextString(string separator)
{
return BranchId + separator +
AccountId + separator +
UserId + separator +
CheckNum + separator+
NumberOfRecords + separator +
StartNextId + separator +
StartPreviousId + separator +
NextId + separator +
PreviousId + separator +
RecordCount + separator;
}
}
Я пробовал использовать StringBuilder для лучшего решения, и я получаю следующее.
public string ToPageContextString(string separator)
{
var contextBuilder = new StringBuilder()
return contextBuilder.Append(BranchId + separator)
.Append(AccountId + separator)
.Append(UserId + separator)
.Append(CheckNum + separator)
...
.ToString();
}
Моим последним подходом было бы использование отражения и настраиваемого атрибута порядка, как предложено здесь Получить свойства в порядке объявления с использованием отражения .
Это более элегантное решение?