首页 > 解决方案 > 在 C# 中创建一个相当于 VB.net 中的模块的类的语法是什么

问题描述

我几乎所有的编程都是在 VB.net(所有风格)中完成的。我现在被分配了一项任务,即在现有 C# 应用程序中创建一个新例程。我想要做的是将一个字符串变量传递给一个类,我可以在其中找出符号手持设备的设备类型,并找出可执行文件在设备上的位置。我试图让课程包含我们在一个地方进行的更改。

所以一个简短的描述是在屏幕上会有一个按钮。在那个按钮上单击我想将按钮的文本传递给一个(VB中的模块)一个类,并根据传递的文本和设备类型调用一个单独的可执行文件,该可执行文件存在于设备上。

到目前为止,我尝试过的一切都引发了错误。在我的按钮上单击我有

    String Reponse =   clsCallAction("Activity");

但这会得到一条消息,即 clsCallAction 是一种类型,但用作变量。

这是 clsCallaction 的示例

    internal static partial class clsCallAction
     {
public static object GetPath(object lAppName)
{
    string resp = "";
    if (lAppName.Equals("Activity"))

    {
        resp = @"\application\activity.exe";
    }

    return resp;
}
   }

如果我在按钮单击时将 new 放在 clsCallAction("Activity") 前面,我会得到一个无法创建静态类 'clsCalACtion' 的实例

感谢任何指针。在 C# 中非常新

标签: c#vb.net

解决方案


它看起来像这样:

public static class CallAction
{
  public static object GetPath(object lAppName)
  {
    string resp = "";
    if (lAppName.Equals("Activity"))
    {
        resp = @"\application\activity.exe";
    }

    return resp;
  }
}

并且会像这样使用:

String Reponse =   CallAction.GetPath("Activity");
  • 不要在类前面加上cls
  • 尽可能避免使用object——它只会让一切变得比它需要的更难。有点像把所有东西都称为“东西”——(“把东西放进东西里然后打开东西”比“把钥匙放进去”更难理解锁上并打开门”)

推荐阅读