是否可以从类库中将值输出到控制台?
例如
Console App -> calls method in -> assembly > function
是否可以在程序集的函数中编写console.out方法?
我知道在web中可以获取httpcontext,并执行response.write。
答案 0 :(得分:16)
是的,Console.WriteLine
等在类库中可以正常工作......但是不能保证任何东西正在监听到控制台。如果您从WinForms应用程序或Web应用程序中使用它,那么输出可能绝对无处...
您是否考虑过使用log4net之类的日志库?
答案 1 :(得分:4)
这取决于将使用您的类库的应用程序类型。如果在控制台应用程序中使用它,则输出将打印到控制台。如果是WinForms,Windows服务或ASP.NET应用程序,则输出将被忽略。
答案 2 :(得分:2)
确实如此,只需使用System.Console.Write...
答案 3 :(得分:2)
如果库客户端是控制台应用程序,请使用您的消息调用Console.WriteLine(“”)。
如果您没有基于控制台的客户端,并且想要打开一个供您自己使用的控制台,则需要使用P / Invoke来调用ConsoleAlloc。有关P / Invoke声明的一些帮助,请参阅here。
话虽如此,我还必须指出从类库中写入控制台绝对是糟糕的设计,你应该考虑使用点网跟踪/日志记录机制(仔细阅读System.Diagnostics上的Microsoft文档)
答案 4 :(得分:1)
坏消息: - 您的文本将位于输出中的所有行的中间。 - 你必须搜索它们。我建议您选择输出中的所有文本并粘贴在记事本上。找到你要找的东西会更容易。
好消息: - 你的文本将独自存在。只有您的命令System.Diagnostics.Debug.WriteLine()。
的结果