К сожалению, вы не можете десериализовать весь конверт из-за проблемы с отложенной десериализацией: https://github.com/Microsoft/bond/issues/96 .
.
Так что вам нужно как-то еще разобрать baseData
и затем передать его десериализатору связей. Или, возможно, просто проанализируйте его как JSON с использованием некоторых JSON-анализаторов, как мы это делали в модульных тестах .
JsonReader reader = new JsonTextReader(new StringReader(Encoding.UTF8.GetString(b, 0, b.Length)));
reader.DateParseHandling = DateParseHandling.None;
JObject obj = JObject.Load(reader);
return obj.ToObject>();
Я не могу комментировать наиболее эффективный способ сделать это, поскольку я не уверен, в чем заключается ваша задача. В некоторых случаях наиболее эффективный способ - вообще не десериализовать всю полезную нагрузку.
Вот реализация Swift. Можно сделать расширение так, чтобы это было применимо другими представлениями, если Вам нравится.
extension UIView {
func addBorderAndColor(color: UIColor, width: CGFloat, corner_radius: CGFloat = 0, clipsToBounds: Bool = false) {
self.layer.borderWidth = width
self.layer.borderColor = color.cgColor
self.layer.cornerRadius = corner_radius
self.clipsToBounds = clipsToBounds
}
}
Вызов это как: email.addBorderAndColor(color: UIColor.white, width: 0.5, corner_radius: 5, clipsToBounds: true)
.