我在UserModel中有两个相关的静态方法:

public static UserModel GetUserByUsername(String username)
{
    //do something
    return UserModel;
}


和重载:

public static UserModel GetUserByUsername(String username, DateTime date)
{
    //do something else
    return DiffUserModel;
}


现在,我可以成功选择一个

List<UserModel>


通过运行

... .Select(UserModel.GetUserByUsername)
  .ToList();


这是在调用重载方法:

public static UserModel GetUserByUsername(String username)


题:

如何使用类似的语法调用重载方法并传递DateTime参数?

我希望能够执行以下操作:

... .Select(UserModel.GetUserByUsername , DateTime.Now)
      .ToList();


获取从重载方法生成的列表。

最佳答案

尝试使用lambda expression(类型为anonymous method):

.Select(x => UserModel.GetUserByUsername(x, DateTime.Now))

关于c# - 当Func <t,t>为必需类型时,如何传递其他参数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21393227/

10-13 22:42