我在ASP.NET MVC中学习了一本带有会员主题的书,我找到了语法,我无法追踪(并且没有在书中解释),这是:
new[] {"string"}
喜欢在:
Roles.AddUsersToRoles(new[] {userName}, new[] {roleName});
每个MDSN库我看到Roles.AddUsersToRoles方法将两个字符串数组作为参数,所以这可能是一个简写,还是会有一些额外的功能?
答案 0 :(得分:8)
您可以创建一个隐式类型的数组,其中包含类型 数组实例是从数组中指定的元素推断出来的 初始化程序。
这个
string[] stringArray = new[] {"string"};
与:
相同string[] stringArray = new string[] {"string"};
需要注意的是,方法Roles.AddUsersToRoles
接受字符串类型数组(而不是字符串)的两个参数。
public static void AddUsersToRoles(
string[] usernames,
string[] roleNames
)
答案 1 :(得分:2)
new string[1] { "string" }
您可以省略数组大小,因为编译器可以为您计算元素数量:
new string[ ] { "string" }
您也可以省略数组元素类型,因为编译器可以从提供的值推断它:
new [ ] { "string" }
但不与anonymous types的初始化程序混淆。这些在[]
之后没有尖括号new
:
new { StringProperty = "string" }
或:
// string StringProperty;
new { StringProperty }