这是我多年前进行的第二个 C# 项目,它一直存在,因为(恕我直言)它是真正有用的软件。它的设计也很糟糕,代码也很尴尬。
它运行 C# 代码。你写了一个方法,方法名出现在一个列表框中,你双击方法名来执行它。而已。
例子:
当我在工作中打开我的 C# Web 项目时,一个方法会运行我的项目需要的几个命令窗口应用程序,并检查以确认必要的服务已启动。我永远不必记住那些东西。
我讨厌大写,所以我有一个小写 SQL 的方法,但保留引用字符串的大小写。另一种方法是调用 Web 服务来美化 SQL。它们都在剪贴板上操作。
一种方法修复 MP3 文件的名称:标题大小写、替换下划线和连字符、可选地删除/插入文本或附加数字。创建播放列表!
我双击以获取我所有的 Twitter 链接,将它们变成带有超链接和 jQuery 支持的搜索的 HTML 页面。
一个方法在指定的 log4net.log 中搜索每个花费超过指定毫秒数的操作。
我可以通过双击一个方法来创建一个还原点(并用另一种方法打开相应的对话框)。
当我的妻子不得不为学校编写一些排序算法时,该实用程序是一个理想的测试平台。我一直用它来测试一些代码。
这些方法中没有一个令人印象深刻。没有大脑袋的东西。其中大部分只是字符串操作、文件系统操作——普通的东西。不过好用!
今天早上,我想将一些 SQL 输出格式化为 Excel 表中的行。我编写了一个方法来读取输出并将其格式化为制表符分隔的列,以便导入 Excel。我不知道我还能怎么做。写了大约8分钟。
我有 300 种方法,其中可能有 50 种经常有用,如果有机会,其余的就在那里。偶尔我会把真正的杂物移到 Zaps 组中,所以它不碍事。
该实用程序具有许多易于使用的功能。我更喜欢键盘而不是鼠标,因此方法被标记为可从下拉列表访问的组:control-T 选择不同的组。不记得组了?您输入 control-F 以查找与字符串匹配的所有方法。向下箭头并按下以运行该方法。参数窗口总是记住它的状态:如果你上次进入 Hoytster,这次它就在那里。您可以右键单击方法以查看其工具提示;双击右键查看其来源。
我试图让快速创建新方法变得容易。
方法生成新函数的原型:输入方法的名称、组标记、工具提示等,然后使用必要的属性装饰创建新方法。原型放置在剪贴板中,因此您可以将其粘贴到实用程序的源文件之一中。
很容易提示输入参数:
...GetParameters("*Target File", "@Report File", "Open Report [No, Yes]");
打开一个带有标记为目标文件和报告文件的文本框的窗口,以及一个打开报告复选框,其中包含切换是和否的文本。大括号中的字符串成为单选按钮。由于初始星号,目标文件必须存在;如果输入了无效的目标文件,参数窗口将不会关闭。由于@-符号,报告文件必须有效(可以创建)。
当您运行该方法并出现参数窗口时,它有一个 [Capture] 按钮,您单击以生成捕获返回参数所需的代码,再次将其放入剪贴板:
string targetFile = parameters["目标文件"]; ... boolean openReport = parameters["Open Report"] == "Yes";
啊,我继续太久了。
那么,我应该有多大的野心?CodePlex?也许是一个专门的网站,人们可以上传他们的方法?
准备好实用程序发布将是很多工作。我必须清理代码;删除真正愚蠢的方法和从未完成的方法;创建“制作新方法”过程的屏幕截图,记录驱动参数窗口的微小的“元语言”(舌头)。
我喜欢你们都使用我的实用程序来提高工作效率的想法。我喜欢看到你发明和分享的方法的想法。毫无疑问,它就在那里,但我不知道人们在网络上共享代码的地方,比如“修复我的 MP3 名称”这样简单的方法。
你想拥有这个实用程序吗?
除了过度劳累和懒惰之外,我从未建立过网站(!)——你们可能会嘲笑我,因为我的 GetParameters() 方法有大约 200 行(我可怜的借口:我从 FORTRAN 开始)。从未设计过此实用程序;它增加了。:)
所以让我知道:你认为这个实用程序是否足够有用,可以放在 CodePlex(或 somplace)上?
提前致谢!- 霍伊斯特