У меня есть набор объектов (например, «Продукты»), и я хочу изменить некоторые значения полей для каждого объекта в коллекции. Я хочу, чтобы определить имя поля и соответствующее значение, как показано нижеИзменение нескольких значений полей объекта
var mapData = new Dictionary<string,string>();
mapData.Add("Name","N");
mapData.Add("Category", "C");
для имени и категории полей значений каждого заранее заполненный объект продукта должен быть перезаписаны с N и C. Я пытался сделать это с помощью LINQ, как показано ниже и застрял.
[StepArgumentTransformation]
public IEnumerable<Product> TransformProductData(Table table)
{
var mapData = new Dictionary<string,string>();
mapData.Add("Name","N");
mapData.Add("Category", "C");
foreach(var product in table.CreateSet<Product>)
{
var transformedProduct = typeof(product).GetProperties().Select
(
prop => mapData.First(x => x.Key.Equals(prop.Name))
// How do I assign the change the values here ??
)
}
}
Предположим, объект продукта выглядит, как показано ниже
public class Product
{
public string Code { get; set; }
public string Name { get; set; }
public string Category { get; set; }
public string Amount { get; set; }
}
спасибо HashPsi! – Rasika