.net 通过WCF发送guid
我有一个WCF项目,它通过实体框架连接到数据库 我正在尝试发送一个对象列表,其中一个变量的类型为GUID 我正在将我的.net 通过WCF发送guid,.net,wcf,.net,Wcf,我有一个WCF项目,它通过实体框架连接到数据库 我正在尝试发送一个对象列表,其中一个变量的类型为GUID 我正在将我的实体。员工转换为列表,如果ID为int一切正常,但如果我将其更改为GUID,它将崩溃,并显示以下错误消息: 接收对XXXXXXXXXX:92389:service.svc的HTTP响应时出错。这可能是由于服务端点绑定未使用HTTP协议造成的。这也可能是由于服务器中止了HTTP请求上下文(可能是由于服务关闭)。有关详细信息,请参阅服务器日志 有人能帮忙吗?您可以将GUID作为ToS
实体。员工
转换为列表
,如果ID
为int
一切正常,但如果我将其更改为GUID
,它将崩溃,并显示以下错误消息:
接收对XXXXXXXXXX:92389:service.svc的HTTP响应时出错。这可能是由于服务端点绑定未使用HTTP协议造成的。这也可能是由于服务器中止了HTTP请求上下文(可能是由于服务关闭)。有关详细信息,请参阅服务器日志
有人能帮忙吗?您可以将GUID作为
ToString()
传递。会更容易
也许您应该看看[DataContract]和[DataMember]属性
我希望这有助于您需要在客户端上重新生成客户端代理,因为您已经更改了数据合同中的属性类型。有一个解决方案: 如果要避免将GUID强制转换为字符串,只需禁用代理即可。 在实体代码中,只需添加以下内容:
YourContext.Configuration.ProxyCreationEnabled = false
但是您需要知道,如果您要这样做,您将无法生成DML命令
希望它能帮助你 “It崩溃”不是一个足够精确的bug报告。错误消息是什么?输入值是什么?错误消息是:接收对XXXXXXXXXX:92389:service.svc的HTTP响应时出错。这可能是由于服务端点绑定未使用HTTP协议造成的。这也可能是由于服务器中止了HTTP请求上下文(可能是由于服务关闭)。有关详细信息,请参阅服务器日志。根据错误消息,您的服务可能因未处理的异常而崩溃。发布您的代码,以便获得更好的答案。在iDevice中:[OperationContract]列出员工();在服务中:public List Employees(){List Emp=new List();使用(ProjectEntities PE=new ProjectEntities()){Emp=PE.Employees.ToList();}返回Emp;}EmployeeID是GUID,如果我将它转换为INT或String它的工作状态…我应该尝试什么姿态?[DataContract]在类中,而[DataMember]在所有属性中。更好的解决方案是解析ToString()。我认为这可能是最好的解决你的问题上面的链接去西班牙版的MSDN页面。这是原件: