2010-02-22 83 views
0

我有1个解决方案中的2个WPF项目。每个项目都有不同的服务参考。第一个项目是登录窗口,第二个是应用程序主窗口。它必须在分开的项目中,不要问为什么。WPF - 如何调用另一个WPF与自己的服务refences?

所以,我在做项目的登录主窗口参考,并创建主窗口对象时的登录数据corect。这里的代码示例:

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提供的服务引用?或者我必须用引用做些什么?

回答

0

没有什么错在你的架构(即使我们对此讨论),这更是一个WCF的问题。 您的问题来自于您的登录应用程序配置文件居屋没有终点的主窗口的服务定义的事实。

的登录的app.config应该包含在<configuration><system.serviceModel><client>第二节<endpoint .../>标签。

+0

是的,我把它太,但现在,我已经接到了服务空响应。我为这两个项目创建了全局app.config文件,并且工作正常。 – Kamilos 2010-02-23 08:51:58

+0

“空响应”是什么意思?如果你得到回应,那么你的服务正在工作。错误是在别的地方,在你的服务本身你有多个服务实例,并调用错误的,等等。 – Mart 2010-02-23 10:25:02

+0

response.Succeed是真实的,但所有的数据是空的,不能添加新的服务引用项目之一,但它是其他问题(VS错误?) - 当我从其他项目中复制它,并在csproj和Reference.cs中手动更改它的作品...奇怪。只是在添加新的服务引用时,它似乎被添加(没有错误),但它没有。 – Kamilos 2010-02-24 11:16:18