Silverlight调用服务时出错
问题描述:
我想从Silverlight应用程序调用服务,但出现以下错误。Silverlight调用服务时出错
Uncaught Error: Unhandled Error in Silverlight Application An exception occurred during the operation, making the result invalid. Check InnerException for exception details.
这适用于本地。我不知道它是否有意义,但在本地,如果我在浏览器中添加web服务的url,我会得到该服务的详细信息页面。另一方面,在生产服务器上,它会提示我下载它。
有没有人知道这件事?
感谢
public MainPage() {
InitializeComponent();
Loaded += new System.Windows.RoutedEventHandler(MainPage_Loaded);
}
private void MainPage_Loaded(object sender, System.Windows.RoutedEventArgs e) {
var newsFeedWcfClient = new NewsFeedWCFClient();
newsFeedWcfClient.GetNewsFeedItemsCompleted += newsFeedWcfClient_GetNewsFeedItemsCompleted;
newsFeedWcfClient.GetNewsFeedItemsAsync();
}
void newsFeedWcfClient_GetNewsFeedItemsCompleted(object sender, GetNewsFeedItemsCompletedEventArgs e) {
var source = (IList<NewsFeed>)e.Result;
IList<CustomNewsFeed> customNewsFeeds = new List<CustomNewsFeed>();
foreach (var item in source) {
customNewsFeeds.Add(new CustomNewsFeed() {
ProductID = item.Products.ProductID,
ProductTitle = item.Products.Title,
Status = item.Text,
Thumb = string.Format("{0}/{1}", item.Products.Product_Photos.Select(pp => pp.PhotoPath).FirstOrDefault(), item.Products.Product_Photos.Select(pp => pp.PhotoName).FirstOrDefault()),
UserID = item.User.Id,
UserName = item.User.Username
});
}
NewsFeedLB.ItemsSource = customNewsFeeds;
}
答
,它“提示您下载”在生产服务器上会建议生产Web服务器不知道如何处理您的.svc或.asmx文件做的事实。它就像一个正常的文件(.txt,.pdf等)。
您是否安装了生产中安装的所有项目?例如,您需要安装正确的.NET运行时。此外,ASP.NET需要安装并启用。
要确定发生了什么,我会建议安装Fiddler并使用它来跟踪Silverlight应用程序调用服务器时发生的情况。在将Silverlight解决为Web Service通信问题时,我发现这种方法是无价的。