1

昨天我想问一个问题,但似乎太模糊了。这是另一个尝试。

过去,我使用过一些具有功能的 winforms/VB.Net 类,例如处理文本字符串、文件操作或数据库处理,例如 clsStrings、clsIO 和 clsDB。这个想法是这些类完成了与主题相关的所有事情,因此 clsStrings 将有一个名为“filterString”、removeCertainChars 等的方法。

在旧的 winforms 应用程序中,我只是在需要访问方法时编写 Imports clsStrings。在整个 .vb 文件中,我可以编写类似

str = filterString(TextBox1.Text)

我现在尝试在 C# 中的新 winforms 应用程序中获得相同的功能。我唯一要做的就是为类创建一个变量:

clsStrings clsstrings = New clsStrings();

...然后在代码中:

str = clsstrings.filterString(TextBox1.Text);

所以我想我想要的是能够为这些“帮助类”使用 using 语句(他们有更好的词吗?),这样我就不必一直写变量名。(就像当 Intellisense 发现命名空间丢失并询问我是否要为 System.Data 使用 using 语句时,我可以编写“DataTable”,而不必一直编写“Data.Datatable”。)

我怀疑我需要将这些类文件放在一个单独的文件夹中,但这完全没问题。我只想要我的应用程序的一些结构。

我希望这更清楚。

感谢您的任何意见!

4

2 回答 2

1

好吧,不同之处在于现在您正在使用 OOP 原则。

为了更接近以前的习惯,您可以做的是为帮助类构建静态类,甚至可以将它们变成扩展方法。

例子:

public static class ClsStrings
{

 public static string FilterString(this string stringToFilter) { return something; }

}

然后你可以这样称呼它:

string filteredString = TextBox1.Text.filterString();

或者

string filteredString = ClsStrings.filterString(TextBox1.Text);
于 2013-02-05T07:45:38.583 回答
0

扩展方法是要走的路。使用这些,您基本上可以使用自己的方法扩展 String 类并执行类似 Sting.filterString(); 之类的操作。

http://msdn.microsoft.com/en-us/library/vstudio/bb383977.aspx

于 2013-02-05T08:12:26.717 回答