使用ServiceStack从Post返回一个简单的User对象。
用户对象非常简单:
public class User
{
public Guid Id { get; set; }
public string Username { get; set; }
}
后处理方法:
public override object OnPost(User user)
{
User newUser;
// Do stuff to user...
return newUser;
}
我的问题是ServiceStack格式化Guid时没有破折号,所以JSON响应看起来像这样:
{"id":"c884ce020ec94c65a8788c2ddc500434","username":"new user name"}
客户端是Android/Java客户端,UUID.fromString()方法确实对此格式感到不安。
有什么方法可以强制ServiceStack返回用破折号格式化的Guid吗?
您可以将Guid序列化程序重写为
ServiceStack.Text.JsConfig<Guid>.SerializeFn = guid => guid.ToString();