C# 重用格式化显示对象的代码
我有一个对象列表,这些对象是类的实例。 我想对它们进行格式化以供显示,我希望格式化显示的代码可以重用。 因此,它可以在.aspx页面中使用,也可以在将数据导出到excel时使用 我开始创建一个函数,该函数返回一个匿名类对象,并格式化该类的所有字段C# 重用格式化显示对象的代码,c#,.net,formatting,C#,.net,Formatting,我有一个对象列表,这些对象是类的实例。 我想对它们进行格式化以供显示,我希望格式化显示的代码可以重用。 因此,它可以在.aspx页面中使用,也可以在将数据导出到excel时使用 我开始创建一个函数,该函数返回一个匿名类对象,并格式化该类的所有字段 public Object GetForDisplay() { return new { RecordNum, ID,
public Object GetForDisplay()
{
return new
{
RecordNum,
ID,
Value = Value.HasValue? Value.Value.ToString("0.##"): "-",
...
};
}
但这不允许我在需要对属性进行细微更改时访问这些属性
我的下一次尝试是返回一个包含所有字段的字典(字符串是字段名)
公共字典GetForDisplay()
{
返回新词典
{
{“RecordNum”,RecordNum},
{“ID”,ID},
{“Value”,Value.HasValue?Value.Value.ToString(“0.###”):-“},
}
}
我想知道有没有更好的方法?你会创建一个新的类来保存格式化的数据吗?你不能简单地重写每个类的ToString()
方法,这样你就可以将它传递给任何函数来显示在屏幕上吗?你需要学习如何正确地使用ASP.NET进行开发。。。这是你的问题,不是上面的问题,而是你还不知道如何使用ASP.NET。对于上述情况,您可以编写用户控件或Web控件。例如,请参见。祝你好运。让你的类实现IFormattable并使用自定义IFormatProvider和ICustomFormatter在显示棘手的/可能的空/组合值时会有所帮助
public Dictionary<String, Object> GetForDisplay()
{
return new Dictionary<String, Object>
{
{"RecordNum", RecordNum},
{ "ID", ID },
{ "Value ", Value.HasValue? Value.Value.ToString("0.##"): "-"},
}
}