aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.CSV/CsvFileReader.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Tango.CSV/CsvFileReader.cs')
-rw-r--r--Software/Visual_Studio/Tango.CSV/CsvFileReader.cs32
1 files changed, 6 insertions, 26 deletions
diff --git a/Software/Visual_Studio/Tango.CSV/CsvFileReader.cs b/Software/Visual_Studio/Tango.CSV/CsvFileReader.cs
index 79f716aab..6d1deded2 100644
--- a/Software/Visual_Studio/Tango.CSV/CsvFileReader.cs
+++ b/Software/Visual_Studio/Tango.CSV/CsvFileReader.cs
@@ -35,8 +35,6 @@ namespace Tango.CSV
private readonly char textQualifier;
private readonly StringBuilder parseFieldResult = new StringBuilder();
-
-
/// <summary>
/// Initializes a new instance of the <see cref="CsvFileReader{T}"/> class.
/// </summary>
@@ -242,39 +240,22 @@ namespace Tango.CSV
/// <param name="c">The c.</param>
/// <param name="staticMember">if set to <c>true</c> [static member].</param>
/// <returns></returns>
- private static Action<T, string> FindSetter(string c, bool staticMember, int? index = null)
+ private static Action<T, string> FindSetter(string c, bool staticMember)
{
var flags = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.IgnoreCase | (staticMember ? BindingFlags.Static : BindingFlags.Instance);
Action<T, string> action = null;
-
PropertyInfo pi = typeof(T).GetProperty(c, flags);
if (pi != null)
{
var pFunc = StringToObject(pi.PropertyType);
action = EmitSetValueAction(pi, pFunc);
}
-
- if (action == null)
- {
- FieldInfo fi = typeof(T).GetField(c, flags);
- if (fi != null)
- {
- var fFunc = StringToObject(fi.FieldType);
- action = EmitSetValueAction(fi, fFunc);
- }
- }
-
- if (action == null && index != null)
+ FieldInfo fi = typeof(T).GetField(c, flags);
+ if (fi != null)
{
- var propByIndex = typeof(T).GetProperties(flags).SingleOrDefault(x => x.GetCustomAttribute<CsvOrderAttribute>() != null && x.GetCustomAttribute<CsvOrderAttribute>().Index == index);
-
- if (propByIndex != null)
- {
- var pFunc = StringToObject(propByIndex.PropertyType);
- action = EmitSetValueAction(propByIndex, pFunc);
- }
+ var fFunc = StringToObject(fi.FieldType);
+ action = EmitSetValueAction(fi, fFunc);
}
-
return action;
}
@@ -311,7 +292,7 @@ namespace Tango.CSV
Action<T, string> action = null;
if (columnName.IndexOf(' ') >= 0)
columnName = columnName.Replace(" ", "");
- action = FindSetter(columnName, false, i) ?? FindSetter(columnName, true, i);
+ action = FindSetter(columnName, false) ?? FindSetter(columnName, true);
list.Add(action);
}
@@ -422,7 +403,6 @@ namespace Tango.CSV
break;
}
this.columns = readColumns.ToArray();
- Columns = this.columns;
}
/// <summary>