程序更新后WCF服务无法正常工作

时间:2009-08-26 15:11:24

标签: wcf installer app-config endpoints

我最近为我的程序添加了一个WCF服务引用。当我执行该程序的干净安装时,一切似乎都按预期工作。但是,当我在已安装了先前版本(没有新服务引用)的客户端上安装程序时,我得到一个异常,告诉我无法找到此特定服务的默认端点。

似乎没有使用新的端点设置更新appname.exe.config。是否有任何原因,如何强制安装程序覆盖配置文件?我正在使用默认的Visual Studio 2008安装程序项目,并将RemovePreviousVersions设置为True。

更新 我的程序在第一次运行后使用以下代码加密设置部分

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        ConfigurationSection section = config.GetSection(sectionKey);
        if (section != null)
        {
            if (!section.SectionInformation.IsProtected)
            {
                if (!section.ElementInformation.IsLocked)
                {
                    section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
                    section.SectionInformation.ForceSave = true;
                    config.Save(ConfigurationSaveMode.Full);
                }
            }
        }

当我在安装新版本之前没有运行程序时,app.config会更新。

1 个答案:

答案 0 :(得分:0)

你是对的,它是未更新的配置文件。

有几种可能性:

  • 安装程序具有旧版本的配置文件
  • 安装程序没有配置文件,程序正在使用计算机上的旧文件

首先尝试卸载项目,然后安装并检查配置文件是否已被复制。