我是一名有用的助手,可以为您进行文本翻译。以下是需要翻译的内容:
如果我想在C#中使用这个类,我会这样做:
然而,在VB.NET代码中,可以像这样使用该类:
在VB.NET中,可以在类上调用实例方法。据我所知,这似乎会隐式创建类的新实例,然后调用该对象上的方法。在C#中,这是不可能的-静态方法必须在类上调用,而实例方法必须在对象上调用。
我在互联网上找不到任何关于这个特性的信息。这个特性叫什么名字,这是一个好的实践吗?
该项目最初是从VB6转换而来 - 这是一种奇怪的遗留特性吗?
我正在维护一个同时包含VB.NET和C#组件的应用程序。我曾认为这两种语言只是在语法上有所不同,但我发现了VB.NET中一个奇怪的特性,而在C#中并不存在。
在VB.NET中,我有以下类:
Public Class bill_staff Inherits System.Windows.Forms.Form
....
End Class
如果我想在C#中使用这个类,我会这样做:
using (var frm = new bill_staff())
frm.ShowDialog();
然而,在VB.NET代码中,可以像这样使用该类:
bill_staff.ShowDialog();
ShowDialog
在元数据中被定义为:
Public Function ShowDialog() As System.Windows.Forms.DialogResult
在VB.NET中,可以在类上调用实例方法。据我所知,这似乎会隐式创建类的新实例,然后调用该对象上的方法。在C#中,这是不可能的-静态方法必须在类上调用,而实例方法必须在对象上调用。
我在互联网上找不到任何关于这个特性的信息。这个特性叫什么名字,这是一个好的实践吗?
该项目最初是从VB6转换而来 - 这是一种奇怪的遗留特性吗?