Я выполняю автоматизации с помощью C# в качестве языка программированияСписок типа, который определяется во время выполнения
У меня есть Enum проведение столбцов в таблице. Я сохраняю тип данных этих столбцов в «Описание» для каждого имени столбца.
Каждый из столбцов сортируется после сортировки. Я хочу проверить сортировку по определенному столбцу правильно. Я делаю список данных в столбце, сортируя его программно, а затем сортируя его на экране, читая содержимое, а затем используя List.SequenceEquals
Я пытаюсь создать список «type» (как указано в "Описание"). Но похоже, что я не могу создать список объектов времени исполнения.
Любое решение этого вопроса?
КОД
{
public enum tranColumns
{
[Description("DateTime")]
InvoiceDate,
[Description("string")]
Customer,
[Description("string")]
InvoiceID,
[Description("string")]
LiabilityTypeDescription,
[Description("string")]
TransactionStatusDescription,
[Description("string")]
TestTransaction,
[Description("string")]
TransactionDate,
[Description("int")]
TransactionID,
[Description("string")]
SourceSystem,
[Description("string")]
ShipToGeocode,
[Description("DateTime")]
CreationTime
}
var type = MyExtensions.GetDataType(tranColumns.InvoiceDate); //Gets System.Type
List<type> list= new List<type>();
}
public static string GetEnumDescription(System.Enum value)
{
FieldInfo fi = value.GetType().GetField(value.ToString());
DescriptionAttribute[] attributes =
(DescriptionAttribute[])fi.GetCustomAttributes(typeof(DescriptionAttribute), false);
if (attributes != null && attributes.Length > 0)
return attributes[0].Description;
else
return value.ToString();
}
public static Type GetDataType(System.Enum value)
{
switch(GetEnumDescription(value).ToLower())
{
case "datetime":
return typeof(DateTime);
case "string":
return typeof(String);
case "int":
return typeof(Int32);
default:
Utilities.log("Unkwown datatype",LogType.ErrorEntry);
return typeof(Object);
}
}
не может создать список "типа" таким образом!
Что делает ваш метод MyExtensions.GetDataType? –
Он просто читает описание, использует случай переключения и возвращает typeof (String) или typeof (DateTime) или typeof (Int32) – Kirtiraj
Вы должны указать этот код. Мы не знаем, если это ошибка. Вы можете, но мы этого не сделаем. –