如何展开类对象
本文关键字:对象 何展开 | 更新日期: 2023-09-27 18:33:59
我想把它做好,所以我过度简化了它。
照原样,这将在所有三个文本框中返回 null。
我知道"foreach"是不正确的。
有人可以启发我如何扩展类对象吗?
默认.aspx.cs
protected void Button1_Click(object sender, EventArgs e)
{
List<dataclass> returnedData = Getdata();
foreach (var dataclass0 in returnedData)
{
TextBox1.Text = dataclass0.item1;
TextBox2.Text = dataclass0.item2;
TextBox3.Text = dataclass0.item3;
}
}
public static List<dataclass> Getdata()
{
List<dataclass> returndata = new List<dataclass>();
dataclass dc = new dataclass();
dc.item1 = "a";
dc.item2 = "b";
dc.item3 = "c";
returndata.Add(dc);
return returndata;
}
类1.cs
public class dataclass
{
public string item1 { get; set; }
public string item2 { get; set; }
public string item3 { get; set; }
}
下面的代码将生成 3 个字符串(每个文本框一个),然后将它们分配给相应的 Text 属性。它使用StringBuilder
来优化串联。 AppendLine
对于保持不同串联值的间距很有用:.Replace(Environment.NewLine, ", ")
稍后将换行符替换为 ", ";如果不需要将值隔开,只需删除.Replace(Environment.NewLine, ", ")
并将AppendLine
替换为 Append
。
protected void Button1_Click(object sender, EventArgs e)
{
var sbText1 = new StringBuilder();
var sbText2 = new StringBuilder();
var sbText3 = new StringBuilder();
var returnedData = Getdata();
foreach (var dataclass0 in returnedData)
{
sbText1.AppendLine(dataclass0.item1);
sbText2.AppendLine(dataclass0.item2);
sbText3.AppendLine(dataclass0.item3);
}
TextBox1.Text = sbText1.ToString().Replace(Environment.NewLine, ", ");
TextBox2.Text = sbText2.ToString().Replace(Environment.NewLine, ", ");
TextBox3.Text = sbText3.ToString().Replace(Environment.NewLine, ", ");
}
问候丹尼尔。