【发布时间】:2014-09-30 05:11:47
【问题描述】:
我有这个 VB.Net 函数(来自其他项目),我需要将其转换为 C#。
Private Function Convert(ByVal Value As String) As String
Dim transformed = Encoding.Unicode.GetBytes(Value).Select( _
Function(item) Not item)
Return Encoding.Unicode.GetString(transformed.ToArray())
End Function
这是我尝试过的:
private string Convert(string Value)
{
return Encoding.Unicode.GetString(Enumerable.ToArray<byte>(Enumerable.Select<byte, byte>((IEnumerable<byte>)Encoding.Unicode.GetBytes(Value),
(Func<byte, byte>)(item => ~item))));
}
我收到两个错误:
- 无法将类型“int”隐式转换为“byte”。存在显式转换(您是否缺少演员表?)
- 无法将 lambda 表达式转换为委托类型“System.Func”,因为块中的某些返回类型不能隐式转换为委托返回类型
谁能帮我解决这个问题?
【问题讨论】: