-1

我正在将应用程序从 C# 转换为 VB,但我陷入了这一行:

byte[] picData = sdr2["foto"] as byte[] ?? null;

任何人都可以帮我转换它。

提前致谢

4

3 回答 3

0
Dim picData As Byte() = If(TryCast(sdr2("foto"), Byte()), Nothing)

对于像这样的转换,您可以依靠大量的在线转换器来完成(相对)体面的工作。

查看http://www.developerfusion.com/tools/convert/csharp-to-vb/或其他任何数量的,有一个谷歌。

但是请注意,您的空合并运算符指出,在这种情况下,如果sdr2["foto"] as byte[]返回null,则返回null...您可能需要修复该问题 ;-)

于 2013-04-12T09:28:43.973 回答
0

试试这个

Dim picData As Byte() = If(TryCast(sdr2("foto"), Byte()), Nothing)
于 2013-04-12T09:29:00.293 回答
0

这是翻译 VB <-> C#的有用工具

Dim picData As Byte() = If(TryCast(sdr2("foto"), Byte()), Nothing)

正如 MarcinJuraszek 首先所说,?? null这里没有任何意义,所以你应该使用:

Dim picData As Byte() = TryCast(sdr2("foto"), Byte())
于 2013-04-12T09:29:21.403 回答