c# - 从类对象列表中选择时设置属性值
问题描述
我试图在从列表中选择时设置值(日值到“星期日”),如下面的方法“getData”,有没有一种方法可以在不真正更改类对象属性“日”值的情况下设置它?我只想在阅读时将其设置为“星期日”,就像“星期日”一样“日”。
代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleAppForChecking
{
public class test
{
public string firstName { get; set; }
public string lastName { get; set; }
public int age { get; set; }
public string day { get; set; }
}
public class TestMain
{
static void Main(string[] args)
{
var tests = new List<test>()
{
new test { firstName = "Mike", lastName = "Toss", age = 20, day = "Monday" },
new test { firstName = "Peter", lastName = "Page", age = 30, day = "Tuesday" },
new test { firstName = "Stacy", lastName = "Page", age = 27, day = "Wednesday" }
};
getData(tests);
GetDate(tests);
}
public static void getData(List<test> _data)
{
var _data1 = _data.Where(w => w.firstName == "Stacy")
.Select(o => new
{
o.firstName,
o.lastName,
day = o.day = "Sunday",
o.age
})
.ToList();
foreach(var d in _data1)
{
Console.WriteLine(d);
}
}
public static void GetDate(List<test> _data1)
{
foreach (var d in _data1)
{
Console.WriteLine(d);
}
}
}
}
解决方案
_data.Where(w => w.firstName == "Stacy")
.Select(o=> {o.day = "Sunday"; return c;})
.ToList();
推荐阅读
- azure - 完成后如何获得 Start-AzAutomationJob 的输出?
- javascript - ReactNative AsyncStorage 方法没有响应
- c# - 两个安装程序试图在我的 Visual Studio 安装程序中同时运行
- java - 为什么 SpringBoot App 在 IntelliJ 上运行时以退出代码 0 结束
- directed-acyclic-graphs - 执行完气流中的所有任务后如何执行任务
- ssl - 与 AS400 的 SSL SQOOP 连接
- c++ - c ++将用户输入的值分配给另一个变量并交换它得到的所有值循环
- python - 用于记录的单独 loggerClass
- python - Pylint 在 VSCode 中不起作用,但在终端中作为命令运行良好
- stripe-payments - 自动订阅费用时,如果没有足够的资金会出错