public StringContentService(IStringDataService stringData, ILogger <StringContentService> logger, IOptions <PostgRestConfig> options) { this.stringData = stringData; this.logger = logger; this.defaultValue = options.Value.JsonDefaultValue; this.contentType = options.Value.JsonContentType; this.statusCode = 200; }
private static string FormatParametersInfo(IStringDataService stringData) { var info = stringData?.GetParameterInfo(); if (info == null || info.Count == 0) { return(string.Empty); } return(string.Concat("Parameters: ", string.Join(", ", info.Select(p => $"@{p.Key}={p.Value}")), "\n")); }
public static string FormatPostgresExceptionMessage(PostgresException e, IStringDataService stringData) => $"{e.Severity}\n" + $"Message: {e.Message}\n" + $"Detail: {e.Detail}\n" + $"Line: {e.Line}\n" + $"InternalPosition: {e.InternalPosition}\n" + $"Position: {e.Position}\n" + $"SqlState: {e.SqlState}\n" + $"Statement: {e.Statement}\n" + FormatParametersInfo(stringData) + $"ColumnName: {e.ColumnName}\n" + $"ConstraintName: {e.ConstraintName}\n" + $"TableName: {e.TableName}\n" + $"InternalQuery: {e.InternalQuery}\n" + $"Where: {e.Where}\n" + $"Hint: {e.Hint}\n\n";