DelimitedTextConfigurationInternal
Groups the settings used for interpreting the blob data if the blob is delimited text formatted.
using Azure.Core;
using Azure.Storage.Common;
using System.Xml;
namespace Azure.Storage.Blobs.Models
{
[CodeGenModel("DelimitedTextConfiguration")]
internal class DelimitedTextConfigurationInternal : IXmlSerializable
{
public string ColumnSeparator { get; set; }
public string FieldQuote { get; set; }
public string RecordSeparator { get; set; }
public string EscapeChar { get; set; }
public bool? HeadersPresent { get; set; }
public DelimitedTextConfigurationInternal()
{
}
internal DelimitedTextConfigurationInternal(string columnSeparator, string fieldQuote, string recordSeparator, string escapeChar, bool? headersPresent)
{
ColumnSeparator = columnSeparator;
FieldQuote = fieldQuote;
RecordSeparator = recordSeparator;
EscapeChar = escapeChar;
HeadersPresent = headersPresent;
}
void IXmlSerializable.Write(XmlWriter writer, string nameHint)
{
writer.WriteStartElement(nameHint ?? "DelimitedTextConfiguration");
if (Optional.IsDefined(ColumnSeparator)) {
writer.WriteStartElement("ColumnSeparator");
writer.WriteValue(ColumnSeparator);
writer.WriteEndElement();
}
if (Optional.IsDefined(FieldQuote)) {
writer.WriteStartElement("FieldQuote");
writer.WriteValue(FieldQuote);
writer.WriteEndElement();
}
if (Optional.IsDefined(RecordSeparator)) {
writer.WriteStartElement("RecordSeparator");
writer.WriteValue(RecordSeparator);
writer.WriteEndElement();
}
if (Optional.IsDefined(EscapeChar)) {
writer.WriteStartElement("EscapeChar");
writer.WriteValue(EscapeChar);
writer.WriteEndElement();
}
if (Optional.IsDefined(HeadersPresent)) {
writer.WriteStartElement("HasHeaders");
writer.WriteValue(HeadersPresent.Value);
writer.WriteEndElement();
}
writer.WriteEndElement();
}
}
}