该如何Debug???
项目有asp.net服务器端,Silverlight客户端,中间使用“启用 Silverlight的WCF服务”进行通信。
asp.net服务器端:
[OperationContract]
public List<Monitoring> GetMonitorDatasService(Monitoring.EnergyType energytype, KeyValuePair<Monitoring.Period, string> monitordate, KeyValuePair<Monitoring.MonitorType, string> monitortype, string meterusetype)
{
return GetMonitorDatas(energytype, energytype.ToString(), monitordate, monitortype, meterusetype);
}
Silverlight客户端:
private void ChartsDataBind()
{
ChartsServiceClient.ChartsServiceClient serviceclient = new ChartsServiceClient.ChartsServiceClient();
serviceclient.ChartsServiceInitializeOneAsync(issubstation);
serviceclient.GetMonitorDatasServiceCompleted += new EventHandler<GetMonitorDatasServiceCompletedEventArgs>(serviceclient_GetMonitorDatasServiceCompleted);
serviceclient.GetMonitorDatasServiceAsync(Monitoring.EnergyType.EM, monitordate, monitortype, meterusetype);
}
void serviceclient_GetMonitorDatasServiceCompleted(object sender, GetMonitorDatasServiceCompletedEventArgs e)
{
var datas = e.Result;
MessageBox.Show(datas.Count.ToString());
}
问题一:现在有报错,可不可以在“Silverlight”客户端设置一个“断点”。从“Silverlight”客户端,单步调试(Debug),到服务器端(asp.net)站点,看整个的调用过程?
“Reference.cs”下:
public System.Collections.ObjectModel.ObservableCollection<MyCharts.ChartsServiceClient.Monitoring> EndGetMonitorDatasService(System.IAsyncResult result) {
object[] _args = new object[0];
System.Collections.ObjectModel.ObservableCollection<MyCharts.ChartsServiceClient.Monitoring> _result = ((System.Collections.ObjectModel.ObservableCollection<MyCharts.ChartsServiceClient.Monitoring>)(base.EndInvoke("GetMonitorDatasService", _args, result)));
这一句报错,错误信息如下;
格式化程序尝试对消息反序列化时引发异常: 尝试对参数 进行反序列化时出错: monitordate。InnerException 消息是““EndElement”命名空间“”中的“monitordate”并非所需元素。所需元素应为“key”。”。有关详细信息,请参见 InnerException。
问题二:这是怎么回事呢?这个错误应该怎样调试???
return _result;
}
------解决方案--------------------
------解决方案--------------------
你用常规的方法打开你的站点,然后再打开VS调试菜单中的附加到进程,将进程附加至iexplorer,然后再调试silverlight程序,这就是attach服务进程,同样对于服务端也可以这样调试,不过选择的对象是w3svc
------解决方案--------------------WCF?? 唉...我都还没学过! 学习了
------解决方案--------------------估计有类继承。debug关系没搞好。