2010-03-07 67 views
0

所有自动在线转换器都无法转换此代码。不幸的是,我对C#的简短知识也让我失望。该代码来源于一个博客,链接从another of my questions将C#中的代码片段转换为VB.NET

这是C#中的代码片段;我现在已经在VB.NET(删除了一些内联的东西);但是,

Dim virtualFileDataObject = New VirtualFileDataObject() 
    Dim vf As New VirtualFileDataObject.FileDescriptor() 

    vf.Name = "abc.txt" 
    vf.StreamContents = ?? 

    Using webc As New WebClient() 
     Dim data = webc.DownloadData("http://www.google.com") 
     stream??.Write(data, 0, data.Length) 
    End Using 

    virtualFileDataObject.SetData(vf) 

您的帮助将不胜感激!

回答

0

StreamContents正在使用VB.NET不支持的匿名方法进行设置(但它在VB.NET 10中会在.NET 4.0中出现)。我可以建议的下一件最好的事情是:

vf.StreamContents = AddressOf(MyStreamContents) 

Public Sub MyStreamContents(ByVal stream As <Whatever the type is>) 

    Using webc As New WebClient() 
     Dim data = webc.DownloadData("http://www.google.com") 
     stream.Write(data, 0, data.Length) 
    End Using 

End Sub 
+0

酷,现在行动(的)是有道理的 - 一个代表。 我该如何将URL参数传递给MyStreamContents,以代替硬编码的Google URL? – 2010-03-07 11:59:50

+0

您可以使用在Sub之外声明的变量,例如字段或全局变量。 – 2010-03-07 13:01:36