gpt4 book ai didi

c# - VB 转换为 C#

转载 作者:行者123 更新时间:2023-11-30 19:04:55 25 4
gpt4 key购买 nike

我使用转换器将 vb 更改为 c#,其中一行最初是:

Dim roles = System.Web.Security.Roles.GetAllRoles()
Dim roleNames() As String = roles.Where(Function(x) x.ToLower() <> "Admin").ToArray()

当转换返回时,我得到:

dynamic roles = System.Web.Security.Roles.GetAllRoles();
string[] roleNames = roles.Where(x => x.ToLower() != "Admin").ToArray();

然后抛出错误:

Cannot use a lambda expression as an argument to a dynamically dispatched operation without first casting it to a delegate or expression tree type.

我尝试了几种不同的方法和几种不同的转换器,但我没有得到任何不同的结果。

如果转换正确,为什么在 vb 中可以正常工作,而在 c# 中却不行?

最佳答案

Why does it work fine in vb and not in c# if the conversion is correct?

因为转换不正确。你不应该在这里使用 dynamic

var roles = System.Web.Security.Roles.GetAllRoles(); 
string[] roleNames = roles.Where(x => x.ToLower() != "Admin").ToArray();

关于c# - VB 转换为 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34934509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com