C# 需要将此代码转换为VB

C# 需要将此代码转换为VB,c#,vb.net,ienumerable,c#-to-vb.net,C#,Vb.net,Ienumerable,C# To Vb.net,我对C#NET一点也不熟悉。我需要把它转换成VB。谁能帮我一下吗 public IEnumerable<CodecInfo> AudioCodecs { get { return softPhone.Codecs.Where(c => c.CodecType == CodecMediaType.Audio); } } 公共IEnumerable音频编解码器 { 获取{return softPhone.Codecs.Whe

我对C#NET一点也不熟悉。我需要把它转换成VB。谁能帮我一下吗

public IEnumerable<CodecInfo> AudioCodecs
        {
            get { return softPhone.Codecs.Where(c => c.CodecType == CodecMediaType.Audio); }
        }
公共IEnumerable音频编解码器
{
获取{return softPhone.Codecs.Where(c=>c.CodecType==CodecMediaType.Audio);}
}
谢谢

Public ReadOnly Property AudioCodecs() As IEnumerable(Of CodecInfo)
    Get
        Return softPhone.Codecs.Where(Function(c) c.CodecType = CodecMediaType.Audio)
    End Get
End Property
查询语法比VB.NET中的方法语法更具可读性

将来,您可以使用C#-VB.NET转换器:


这只是返回为CodecMediaType筛选的Codecs集合。音频…在不同语言之间翻译代码对您来说不是一个合适的问题,因此…您可以使用的在线翻译器就是其中之一。有许多在线工具,对于像这样的简单情况非常有用。例如,VB.NET中的查询语法更具可读性-没错,它甚至比C中的查询更强大。如何比C中的同一查询更具可读性
来自softPhone.Codecs中的c,其中c.CodecType==CodecMediaType.Audio
,对吗?看起来很容易阅读(除了在评论中)。我不认为它比C版本更可读。LINQ语法在两种语言中相当一致。这里唯一的关键区别是C#版本压缩了空间,将属性访问器和代码放在一行中,VB.Net强制您使用多行,但这不是查询语法本身。也许这不是最好的示例,所以请看一看:你们都误解了我的注释,所以我编辑了我的答案以澄清这一点(希望如此)。
Public ReadOnly Property AudioCodecs As IEnumerable(Of CodecInfo)
    Get
        Return From c In softPhone.Codecs
               Where c.CodecType = CodecMediaType.Audio
    End Get
End Property
Public ReadOnly Property AudioCodecs() As IEnumerable(Of CodecInfo)
    Get
        Return softPhone.Codecs.Where(Function(c) c.CodecType = CodecMediaType.Audio)
    End Get
End Property