0

我在 1 个解决方案中有 2 个 WPF 项目。这些项目中的每一个都有不同的服务引用。第一个项目是登录窗口,第二个项目是带有应用程序的主窗口。它必须在单独的项目中,不要问为什么。

因此,我在登录项目中进行主窗口引用,并在登录数据正确时创建主窗口对象。这里的代码示例:

try
{
    if (Service1.Login(login, pass))
    {
        MainWindow w2 = new MainWindow();
        w2.Show();
        this.Close();
    }
}
catch (Exception ex)
{
//...
}

我的问题是调用主窗口时发生错误。主要例外是这样的:

"Cannot create instance of 'MainWindow' defined in assembly 'TestApp, Version=1.0.0.0, 
Culture=neutral, PublicKeyToken=null'. Exception has been thrown by the target of an 
invocation.  Error in markup file 'MainWindow.xaml' Line 1 Position 9." 

内部异常告诉我类似:

"Cannot found endpoint of service..."

但是当我只运行主窗口项目作为启动它工作得很好。是否有任何“正确”的方法来调用其他 WPF 的服务引用?或者我必须对参考做些什么?

4

1 回答 1

0

您的架构没有任何问题(即使我们可以讨论它),这更像是一个 WCF 问题。您的问题来自这样一个事实,即您的登录应用程序配置文件没有为 MainWindow 的服务定义端点。

Login app.config 应该在该部分中包含两个<endpoint .../>标签。<configuration><system.serviceModel><client>

于 2010-02-22T15:39:22.337 回答