【发布时间】:2011-06-29 06:59:58
【问题描述】:
我有一个控制台应用程序。该应用程序在服务器上调用 WCF。 该应用程序在 Visual Studio 2008 中完美运行。
错误:
我在 Visual Studio 中使用了一个安装程序项目。 我让安装程序将主要输出提供给应用程序。 它无法连接到服务器上的 WCF。
制作具有控制台(应用程序)exe的安装程序需要哪些步骤, 而后者又使用 WCF。
我的作用域初始化从 initScopeInfo 开始。
private void initScopeInfo()
{
DBSyncProxy.SqlSyncProviderProxy client = null;
ScopeConfigHandler scopeHandler = null;
try
{
//Providing the Config file name('db_config_new.xml') stored in static variable.
DBSyncXMLUtil.setXPathDocument(DBSyncConstants.DB_SYNC_CONFIG_FILE_NAME);
//DBSyncXMLUtil.setXPathDocument(filepath);
string endpoint = DBSyncXMLUtil.getSystemParameter(DBSyncXMLUtil.getDocumnetRoot(), "ServiceURL");
在 setXpathDocument 中
public static void setXPathDocument(string uri)
{
public static XPathDocument doc = null;
doc = new XPathDocument(uri);
}
public static string getSystemParameter(XPathNavigator docroot, string key)
{
string value = null;
try
{
string xpath = DBSyncConstants.XPATH_SYSTEM_PARAMETER;
xpath += "[@key='" + key + "']";
Console.WriteLine("DBSyncXMLUtil :: getParameter() :: XPATH =="+xpath);
Probably Error on below mentioned line
XPathNavigator node = getDocumnetRoot(doc).SelectSingleNode(xpath);
if (node != null)
value = node.Value;
else
Console.WriteLine("Invalid XPATH");
}
catch (Exception ex)
{
Console.WriteLine("DBSyncXMLUtil :: getSystemParameter() :: Exception ==" + ex.ToString());
}
return value;
}
【问题讨论】:
-
您应该提供更多详细信息——也许是一些与您如何调用 WCF 服务相关的示例代码?有任何错误信息吗?
-
您的控制台应用程序是否由另一个应用程序启动?在这种情况下,它将尝试通过此应用程序的名称查找 WCF 客户端配置;像 WhatEverApp.exe.config 而不是 YourConsoleApp.exe.config。
-
你没有提供足够的细节让任何人告诉你哪里出了问题。您是在另一台机器上安装应用程序吗?您是否在与控制台应用程序相同的机器上运行它?你配置正确了吗?