我已经进入了一个项目(提前编写),该项目对我以前从未见过的参数有一些不同的用法。所以我想了解这两者之间有什么区别?
public string Login(string Email, string Password)
{
Member member = MemberProvider.Instance.Login(Email: Email, Password: Password);
// more implementation
}
VS
public string Login(string Email, string Password)
{
Member member = MemberProvider.Instance.Login(Email, Password);
// more implementation
}
提前致谢,
答案 0 :(得分:2)
第一种用法是使用named arguments,而第二种用法是使用普通的“将参数放在参数列表中的正确位置”用法。
前一种风格意味着您可以按自己喜欢的任何顺序放置参数,因此您不必记住(或关心)函数签名实际具有的顺序。您将每个参数与参数名称相关联,并且该函数正确接收参数。
但这两种风格完全相同。前者是C#4增加的便利。
答案 1 :(得分:2)
功能上没什么。它们被命名为参数。
答案 2 :(得分:1)
这些陈述是等同的。第一个语句使用named parameters。来自文档:
命名参数使您可以为特定参数指定参数 参数通过将参数与参数的名称相关联而非 而不是参数列表中参数的位置。