[英]How to create a method which takes generic list and string parameter with mapping?
[英]How to create a method that takes a generic class as a parameter
我一直在搜索SO和其他地方寻找这个问题的答案,我找不到能帮助我理解我的问题的答案。 我是C#的新手,所以这可能是问题的一部分。
我试图了解如何将一个类(或一个副本)作为参数传递给方法。 但是,我希望这个方法接受我传递的任何类,而不是特定的类。
例如:
class Person
{
public string Name{ get;set; }
}
class Bob : Person
{
public Bob(){ Name = "Bob"; }
}
class Fred : Person
{
public Fred(){ Name = "Fred"; }
}
Fred aFred = new Fred();
Bob aBob = new Bob();
// below is where I need the help, I don't know the syntax for what I'm trying to do.
SayName(aBob,aFred);
static public void SayName(person1,person2)
{
Console.WriteLine(person1.Name + ", " +person2.Name) // I'd like this to output "Bob, Fred"
}
好吧,我知道上面的语法是不正确的,只要将这些类作为参数传递或接受它们作为方法的参数,但我希望你能看到我正在尝试做的事情。 我希望能够将任何派生自Person的类传递给SayName方法,并让它输出其名称恰好是什么。
在此先感谢,任何帮助表示赞赏。
有没有办法做到这一点?
只需将它们作为Person
传递:
static public void SayName(Person person1, Person person2)
{
Console.WriteLine(person1.Name + ", " +person2.Name) // I'd like this to output "Bob, Fred"
}
Type未在SayName中声明为参数,似乎是在理解如何传递参数时的误解。 使用两个参数的人员类型说出代码将运行的person1和person2
public static void SayName(Person person1, Person person2)
{
Console.WriteLine(person1.Name + ", " +person2.Name)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.