public override string ToString ()
{
if (_length == 0)
return String.Empty;
if (null != _cached_str)
return _cached_str;
// If we only have a half-full buffer we return a new string.
if (_length < (_str.Length >> 1) || (_str.Length > string.LOS_limit && _length <= string.LOS_limit))
{
// use String.SubstringUnchecked instead of String.Substring
// as the former is guaranteed to create a new string object
_cached_str = _str.SubstringUnchecked (0, _length);
return _cached_str;
}
_cached_str = _str;
_str.InternalSetLength(_length);
return _str;
}
StringBuilder::ToString ( int startIndex, int length ) : string |
public static EditProblemViewModel GetEditProblemViewModel(Problem problem) { var epvm = new EditProblemViewModel(); epvm.Author = problem.Author.UserName; epvm.Name = problem.Name; epvm.Text = problem.Text; epvm.SelectedCategoryId = problem.CategoryId; epvm.IsBlocked = problem.IsBlocked; var sb = new StringBuilder(); foreach (var tag in problem.Tags) { sb.Append(tag.Name); sb.Append(','); } epvm.TagsString = sb.ToString(); sb.Clear(); foreach (var ans in problem.CorrectAnswers) { sb.Append(ans.Text); sb.Append(';'); } sb.Remove(sb.Length - 1, 1); epvm.Answers = sb.ToString(); return epvm; }