public bool TryPrintConstant(object value, IndentedStringBuilder stringBuilder) { var trackingInfoList = value as List<EntityTrackingInfo>; if (trackingInfoList != null) { var appendAction = trackingInfoList.Count > 2 ? AppendLine : Append; appendAction(stringBuilder, "{ "); stringBuilder.IncrementIndent(); for (var i = 0; i < trackingInfoList.Count; i++) { var entityTrackingInfo = trackingInfoList[i]; var separator = i == trackingInfoList.Count - 1 ? " " : ", "; stringBuilder.Append("itemType: " + entityTrackingInfo.QuerySource.ItemType.Name); appendAction(stringBuilder, separator); } stringBuilder.DecrementIndent(); appendAction(stringBuilder, "}"); return true; } return false; }
public bool TryPrintConstant(object value, IndentedStringBuilder stringBuilder) { var shaperCommandContext = value as ShaperCommandContext; if (shaperCommandContext != null) { stringBuilder.AppendLine("SelectExpression: "); stringBuilder.IncrementIndent(); var querySqlGenerator = shaperCommandContext.QuerySqlGeneratorFactory(); var sql = querySqlGenerator.GenerateSql(new Dictionary<string, object>()).CommandText; var lines = sql.Split(new[] { Environment.NewLine }, StringSplitOptions.None); foreach (var line in lines) { stringBuilder.AppendLine(line); } stringBuilder.DecrementIndent(); return true; } return false; }
public Indenter(IndentedStringBuilder stringBuilder) { _stringBuilder = stringBuilder; _stringBuilder.IncrementIndent(); }
public bool TryPrintConstant(object value, IndentedStringBuilder stringBuilder) { var properties = value as IEnumerable<IPropertyBase>; if (properties != null) { var propertiesList = properties.ToList(); var appendAction = propertiesList.Count > 2 ? AppendLine : Append; appendAction(stringBuilder, value.GetType().DisplayName(fullName: false) + " "); appendAction(stringBuilder, "{ "); stringBuilder.IncrementIndent(); foreach (var property in propertiesList) { appendAction(stringBuilder, property.DeclaringEntityType.ClrType.Name + "." + property.Name + ", "); } stringBuilder.DecrementIndent(); stringBuilder.Append("}"); return true; } return false; }