如何判断 WCF 服务是否托管在控制台应用程序中?
How can I tell whether a WCF service is hosted in a Console app?
我有一个正在开发的 WCF 服务,并且经常在 Windows 服务中的托管和控制台应用程序中的托管之间切换。服务和控制台应用程序共享一个配置文件,那么在我的 WPF 客户端中,我还能如何判断服务是否托管在控制台应用程序中?
bool windowsServiceHosted = !Environment.UserInteractive;
更 hacky(上面应该没有必要)
private bool? _ConsolePresent;
public bool ConsolePresent {
get {
if (_ConsolePresent == null) {
_ConsolePresent = true;
try { int window_height = Console.WindowHeight; }
catch { _ConsolePresent = false; }
}
return _ConsolePresent.Value;
}
}
bool windowsServiceHosted = !ConsolePresent;
如果您需要从客户端知道,那么您需要从使用上述服务器端之一的服务器公开一个 bool WindowServicesHosted
属性。
我有一个正在开发的 WCF 服务,并且经常在 Windows 服务中的托管和控制台应用程序中的托管之间切换。服务和控制台应用程序共享一个配置文件,那么在我的 WPF 客户端中,我还能如何判断服务是否托管在控制台应用程序中?
bool windowsServiceHosted = !Environment.UserInteractive;
更 hacky(上面应该没有必要)
private bool? _ConsolePresent;
public bool ConsolePresent {
get {
if (_ConsolePresent == null) {
_ConsolePresent = true;
try { int window_height = Console.WindowHeight; }
catch { _ConsolePresent = false; }
}
return _ConsolePresent.Value;
}
}
bool windowsServiceHosted = !ConsolePresent;
如果您需要从客户端知道,那么您需要从使用上述服务器端之一的服务器公开一个 bool WindowServicesHosted
属性。