【问题标题】:how to translate public event from c# to vb.net [closed]如何将公共事件从 c# 转换为 vb.net [关闭]
【发布时间】:2013-07-27 15:09:27
【问题描述】:

我在 c# 类中有以下代码,并且需要它的 vb.net 等价物。我发现的所有在线翻译工具都将这部分翻译错了。网上的一项研究没有给我带来任何进展。

    public event EventHandler<UploadProgressChangedLibArgs> UploadProgressChanged;

无论我做什么,我都会不断收到 uploadprogresschangedlibargs 没有定义。

感谢任何帮助

附加信息:

http://sourceforge.net/projects/dotnetftplib/files/

这是我要翻译的图书馆

【问题讨论】:

  • 你在任何地方声明了UploadProgressChangedLibArgs?它在 C# 代码中声明在哪里?
  • 我将 Whole class 从 c# 在线翻译成 vb.net。但这部分一直失败。我没有在任何地方声明它,但它似乎也没有在库本身中声明。
  • 必须在某处声明类型。找出 C# 代码中的位置,然后添加对正确库的适当引用,或添加声明。
  • 我现在查看了这个库——它只是一个单独的类。您也需要将其翻译成 VB。你为什么要翻译这段代码?您应该能够使用 VB 中的库而无需翻译它...
  • 谢谢!我想对该类进行一些更改并能够在运行代码中对其进行调试,这就是我将其翻译成 vb.net 的原因。我尝试将其添加为 c# 代码,但如果我使用混合代码,它不会看到类。

标签: c# vb.net class events public


【解决方案1】:

问题正是编译器所说的:找不到UploadProgressChangedLibArgs 类型。那是同一个库中的另一种类型 - 因此您需要先移植 that,然后才能移植使用它的事件。

如 cmets 中所述,我建议您避免将 C# 移植到 VB,反之亦然,除非您真的需要。 .NET 的好处之一是您可以从 VB 调用 C#,反之亦然 - 如果您只想对现有代码库进行细微更改,则无需移植整个内容 - 您只需要了解它所使用的语言足以进行更改。

【讨论】:

  • 如果我做对了:在 vb.net 项目中可以有一个 c# 类.. 对吗? “我可以从 vb.net 调用 c#”是什么意思?谢谢
  • 不在同一个项目中。不过,您可以引用已编译的程序集。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-09
  • 2011-01-31
  • 2013-09-17
  • 2011-03-18
  • 2021-05-10
  • 1970-01-01
相关资源
最近更新 更多