【发布时间】:2018-11-22 22:56:00
【问题描述】:
基本上,我有一个带有一组属性的类 Text。
我想用其他类的属性填充这些。
我可以使用方法重载,但由于我基本上多次执行完全相同的操作,因此使用一种方法执行此操作似乎更简洁。
我有什么和工作:
private Text SetText(Book book)
{
return new Text{
Media = book.GetType().ToString();
Pages = book.Pages,
Words = book.Words,
}
private Text SetText(Letter letter)
{
return new Text{
Media = letter.GetType().ToString();
Pages = letter.Pages,
Words = letter.Words,
}
现在有办法 a) 有 1 种适用于 Book 和 Letter 的方法 b) 自动填写 Pages 和 Words,记住 Letter 和 Book 还有其他属性。
类似
private Text SetText<T>(T data)
{
return new Text
{
Media = data.GetType().ToString(),
Pages = data.Pages,
Words = data.Words,
}
}
如果问题 a 能得到解答,那对我有很大帮助。
如果问题 b 能得到回答,那将是一个不错的奖励。
【问题讨论】:
标签: generics methods dynamic parameters properties