在Web服务2中使用在Web服务1中声明的类型。Asp.NETC#
我有网络服务。类“MapObject”在WebService1的解决方案中声明在Web服务2中使用在Web服务1中声明的类型。Asp.NETC#,c#,asp.net,.net,web-services,azure,C#,Asp.net,.net,Web Services,Azure,我有网络服务。类“MapObject”在WebService1的解决方案中声明 [WebMethod] public void GetRoute(MapObject from, MapObject to) { // Something here return; } WebService2使用WebService1的方法。此外,WebService2还有一个方法 [WebMethod] public void Tes
[WebMethod]
public void GetRoute(MapObject from, MapObject to)
{
// Something here
return;
}
WebService2使用WebService1的方法。此外,WebService2还有一个方法
[WebMethod]
public void TestMethod(MapObject obj)
{
/// something here
}
但是当我尝试调用TestMethod时,我收到了
系统索引自动失效异常:Баааааааааааааааааа。
of System.Web.Services.Protocols.HttpServerType..ctor(类型)
of System.Web.Services.Protocols.HttpServerProtocol.Initialize()
创建(类型类型、HttpContext上下文、HttpRequest请求、HttpResponse响应、布尔和中止处理)
这是因为MapObject无法序列化,但我不明白为什么。
如果我需要在WebService2的方法中使用WebService1的类型,我想知道如何解决这个问题。MapObject无法序列化。为什么?我在这里发现了一个类似的问题:我建议我有一个类似的问题。MapObject中有字典吗?没有,只有两个字符串属性。你知道正在使用哪种序列化程序吗?不确定web方法的默认值是什么。看看是否可以找到,然后尝试序列化/反序列化示例MapObject以查看是否有任何错误。此外,如果实际引用的是其他类型,请指定MapObject的完整路径。将MapObject拉入其自己的程序集中。从两个服务引用它,以便使用相同的确切类型。这些都是猜测,因为从错误或您的详细信息中不清楚发生这种情况的原因:/