/// <summary> /// Initializes a new instance of <see cref="LtsvReader"/> class. /// </summary> /// <param name="textReader">The reader.</param> /// <param name="configuration">The configuration.</param> public LtsvReader(TextReader textReader, LtsvConfiguration configuration) { Ensure.ArgumentNotNull(textReader, nameof(textReader)); _parser = new LtsvParser(textReader); _currentRecord = null; _configuration = configuration ?? new LtsvConfiguration(); }
/// <summary> /// Initializes a new instance of <see cref="LtsvWriter"/> class. /// </summary> /// <param name="textWriter">The writer.</param> /// <param name="configuration">The configuration.</param> public LtsvWriter(TextWriter textWriter, LtsvConfiguration configuration) { Ensure.ArgumentNotNull(textWriter, nameof(textWriter)); _serializer = new LtsvSerializer(textWriter); _currentRecord = new List <KeyValuePair <string, string> >(); _configuration = configuration ?? new LtsvConfiguration(); }
public void FluentClassMappingTest() { var configuration = new LtsvConfiguration(); configuration.RegisterClassMap <PlayerMap>(); var ltsv = "name:kagawa\tNumber:10\tPosition:MF\r\n"; using (var stringReader = new StringReader(ltsv)) using (var ltsvReader = new LtsvReader(stringReader, configuration)) { Assert.True(ltsvReader.Read()); var record = ltsvReader.GetRecord <Player>(); Assert.Equal("kagawa", record.Name); Assert.Equal(10, record.Number); Assert.Null(record.Position); } }
public void FluentClassMappingTest() { var configuration = new LtsvConfiguration(); configuration.RegisterClassMap <PlayerMap>(); var sb = new StringBuilder(); using (var stringWriter = new StringWriter(sb)) using (var ltsvWriter = new LtsvWriter(stringWriter, configuration)) { ltsvWriter.WriteRecord(new Player() { Number = 10, Name = "Kagawa", Position = "MF", }); } Assert.Equal("Name:Kagawa\tNo:10\r\n", sb.ToString()); }