我的WCF服务托管在本地IIS上。当我从应用程序调用它时,我无法从wcf调用中获得结果。但奇怪的是它在调试中显示正确的结果(在进入服务类时)并在登台类中返回对象数组。当调试进入应用程序时,它返回空数组。我有以下来自申请的电话。
public List<SurveyQuestion> GetCommonQuestionsForCompentency()
{
List<SurveyQuestion> questions = new List<SurveyQuestion>();
SurveyQuestion[] ques = null;
ICSSService.SurveyServiceClient client = null;
try
{
client = (SurveyServiceClient)WCFSecurityEntityForSurvey.getSurveyClient();
ques = client.GetCommonQuestionsByCategoryType(2);
questions = ques.ToList<SurveyQuestion>();
return questions;
}
catch (Exception)
{
throw;
}
finally{ client.Close();}
}
调用下面显示的wcf服务类
实施方面出了什么问题。有什么帮助吗?
编辑:
它适用于没有列表的简单服务调用。我认为问题可能在于收集回归。我发现了类似的问题Here。但是没有从中获得太多。
答案 0 :(得分:1)
我有类似的问题。这是因为没有正确添加引用,我修改了reference.cs文件。因此,如果应用程序中的命名空间不同,则数据无法正确获取。只需检查应用程序中的命名空间即可。查看应用程序中的某个类是否具有与其他类不同的命名空间
答案 1 :(得分:0)
您需要做的就是添加一个已完成的函数,然后将网格数据源添加到该函数中。
页面中的加载
AddHandler client.GetEndorsementCompleted, AddressOf GetEndorsement
然后添加以下函数以使异步函数命中。
Private Sub GetEndorsement(ByVal sender As Object,ByVal e As SR.GetEndorsementCompletedEventArgs) 如果不是e.Result.Equals(Nothing)那么
'Data grid binding End If End Sub
如果是c#,您可以使用演示
的代码项目中的link