最近在琢磨WCF Rest模型,想配合Linq to Sql开放一些接口给我的Android客户端调用,但是在写的时候突然发现一个问题,自带的 ResponseFormat =
WebMessageFormat.Json不能序列化Linq to Sql生成的实体类,好了,放图

设置生成实体可被序列化
以下是我服务的代码:
[ServiceContract(Namespace = "DAG.Business.IServices.IUserService")]
public interface IUserService
{
[OperationContract(Name = "DAG.Business.IServices.IUserService.GetUserList")]
[WebGet(UriTemplate = "UserService/GetUserList", BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
d_user GetUserList();
}
具体实现:
/// <summary>
/// 获取用户列表信息
/// </summary>
/// <returns></returns>
public d_user GetUserList()
{
d_user us = new d_user();
us.d_account_id = 1;
us.d_user_address="测试地址";
return us;
}
就是很普通的返回了d_user这个对象,好了,接下来我们打开IE,请求地址:http://localhost:2683/UserService.svc/UserService/GetUserList 访问这个服务,我用
HttpWatch来监控一下,抛出以下异常:

ERROR_HTTP_INVALID_SERVER_RESPONSE
随后我自己自定义了一个实体类,访问成功,数据正常被解析.......
posted @ 2012-01-05 16:13 GaryChen 阅读(441) 评论(0) 编辑

