/// <summary> /// 反序列化一场战斗 /// </summary> private void DeserializeBattleField() { if (!File.Exists(outputPath)) { UnityEditor.EditorUtility.DisplayDialog("错误", "找不到战斗序列化文件,请先序列化一场战斗...", "得嘞"); return; } battleField?.Return(); battleField = BattleField.Create(); using (TextReader rt = new StreamReader(outputPath)) { LitJson.JsonReader jsonReader = new LitJson.JsonReader(rt); var dh = DeserializeHelper.Create(); dh.ObjectDeserializeCallback = delegate(string propertyName, JsonReader reader) { if (propertyName == "battleField") { battleField.Deserialize(reader); return(true); } return(false); }; //开始反序列化 dh.Deserialize(jsonReader, true); } Debug.Log("反序列化完成"); //对反序列化战场进行序列化 if (battleField != null) { SerializeBattleFieldToPath(mirrorOutputPath); } }
//ToDo generic? public void Receive(object obj) { var message = DeserializeHelper <T> .Deserialize(obj.ToString()); if (message != null) { Handling.Invoke(message); } }
// Use this for initialization void Start() { this.virtualPos = this.transform.position; AStarConfig config = new AStarConfig(); config.graphs = DeserializeHelper.Load(this.Graph.bytes); MoveUpdate(); }
public void Deserialize(JsonReader jsonReader) { if (jsonReader == null) { return; } DeserializeHelper dh = DeserializeHelper.Create(); dh.IntDeserializeCallback = IntDeserialize; dh.Deserialize(jsonReader, true); }
public static string ImportComments(InstagraphContext context, string xmlString) { var xml = XElement.Parse(xmlString); var jArray = new JArray(); foreach (var item in xml.Elements()) { var content = item.Element("content")?.Value; var username = item.Element("user")?.Value; var postId = item.Element("post")?.Attribute("id")?.Value; jArray.Add(new JObject( new JProperty("content", content), new JProperty("user", username), new JProperty("postId", postId))); } var commentsJson = JsonConvert.SerializeObject(jArray, Newtonsoft.Json.Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); var comments = JsonConvert.DeserializeObject <List <CommentImportDTO> >(commentsJson); var result = new StringBuilder(); comments.ForEach(c => { if (DeserializeHelper.IsUserExist(c.User, context) && DeserializeHelper.IsPostExist(c.PostId, context)) { var user = context.Users.First(u => u.Username == c.User); var post = context.Posts.Find(int.Parse(c.PostId)); var comment = Mapper.Map <Comment>(c, opt => { opt.Items["User"] = user; opt.Items["UserId"] = user.Id; opt.Items["Post"] = post; opt.Items["PostId"] = post.Id; }); context.Comments.Add(comment); result.AppendLine($"Successfully imported Comment {c.Content}."); } else { result.AppendLine(Constants.ErrorInvalidData); } }); context.SaveChanges(); return(result.ToString()); }
public ActionResult Upload(HttpPostedFileBase file) { try { var DataFile = DeserializeHelper.Deserialize <JSONFile>(file.InputStream); TempData["file"] = DataFile; } catch (Exception) { ViewBag.ErrorMessage = "Invalid file type. Please upload a JSON file in the correct format!"; return(View("Index")); } return(RedirectToAction("Index", "Main")); }
protected override void DeserializeObject( object obj, IXtraPropertyCollection store, OptionsLayoutBase options) { if (options == null) options = OptionsLayoutBase.FullLayout; if (store == null) return; var coll = new XtraPropertyCollection(); coll.AddRange(store); var helper = new DeserializeHelper(obj, false); helper.DeserializeObject(obj, coll, options); }
/// <summary> /// 反序列化战场 /// </summary> /// <param name="jsonReader"></param> public void Deserialize(JsonReader jsonReader) { if (jsonReader == null) { return; } DeserializeHelper dh = DeserializeHelper.Create(); //反序列化对象(暂时只有地图) dh.ObjectDeserializeCallback = ObjectDeserialize; //反序列化数组(暂时只有战斗单位) dh.ArrayDeserializeCallback = ArrayDeserialize; dh.Deserialize(jsonReader, true); }
protected override void DeserializeObject( object obj, IXtraPropertyCollection store, OptionsLayoutBase options) { options ??= OptionsLayoutBase.FullLayout; if (store == null) { return; } var coll = new XtraPropertyCollection(); coll.AddRange(store); var helper = new DeserializeHelper(obj, false); helper.DeserializeObject(obj, coll, options); }
public static string ImportPosts(InstagraphContext context, string xmlString) { var xmlPosts = XDocument.Parse(xmlString); var jArray = new JArray(); foreach (var item in xmlPosts.Root.Elements()) { jArray.Add(new JObject( new JProperty("caption", item.Element("caption")?.Value), new JProperty("user", item.Element("user")?.Value), new JProperty("picture", item.Element("picture")?.Value))); } var jsonPosts = JsonConvert.SerializeObject(jArray, Newtonsoft.Json.Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); var posts = JsonConvert.DeserializeObject <List <PostImportDTO> >(jsonPosts); var result = new StringBuilder(); posts.ForEach(p => { if (DeserializeHelper.IsUserExist(p.User, context) && DeserializeHelper.IsPictureExist(p.Picture, context)) { var user = context.Users.First(u => u.Username == p.User); var picture = context.Pictures.First(p2 => p2.Path == p.Picture); var post = Mapper.Map <Post>(p, opt => { opt.Items["User"] = user; opt.Items["Picture"] = picture; }); context.Posts.Add(post); result.AppendLine($"Successfully imported Post {p.Caption}."); } else { result.AppendLine(Constants.ErrorInvalidData); } }); context.SaveChanges(); return(result.ToString()); }
public static string ImportPictures(InstagraphContext context, string jsonString) { var pictures = JsonConvert.DeserializeObject <List <Picture> >(jsonString); var result = new StringBuilder(); pictures.ForEach(p => { if (DeserializeHelper.IsPictureValid(p, pictures)) { context.Pictures.Add(p); result.AppendLine($"Successfully imported Picture {p.Path}."); } else { result.AppendLine(Constants.ErrorInvalidData); } }); context.SaveChanges(); return(result.ToString()); }
public static string ImportUsers(InstagraphContext context, string jsonString) { var users = JsonConvert.DeserializeObject <List <UserImportDTO> >(jsonString); var result = new StringBuilder(); users.ForEach(u => { if (DeserializeHelper.IsUserValid(u, context)) { var profilePicture = context.Pictures.FirstOrDefault(p => p.Path == u.ProfilePicture); var user = Mapper.Map <User>(u, opt => opt.Items["ProfilePicture"] = profilePicture); context.Users.Add(user); result.AppendLine($"Successfully imported User {user.Username}."); } else { result.AppendLine(Constants.ErrorInvalidData); } }); context.SaveChanges(); return(result.ToString()); }
public static string ImportFollowers(InstagraphContext context, string jsonString) { var usersFollowers = JsonConvert.DeserializeObject <List <UserFollowerImportDTO> >(jsonString); var result = new StringBuilder(); usersFollowers.ForEach(uf => { var user = context.Users.FirstOrDefault(u => u.Username == uf.User); var follower = context.Users.FirstOrDefault(u => u.Username == uf.Follower); if (DeserializeHelper.IsUserFollowerValid(user, follower, context)) { var userFollower = Mapper.Map <UserFollower>(uf, opt => { opt.Items["User"] = user; opt.Items["UserId"] = user.Id; opt.Items["Follower"] = follower; opt.Items["FollowerId"] = follower.Id; }); context.UsersFollowers.Add(userFollower); context.SaveChanges(); user.Followers.Add(userFollower); follower.UsersFollowing.Add(userFollower); result.AppendLine($"Successfully imported Follower {follower.Username} to User {user.Username}."); } else { result.AppendLine(Constants.ErrorInvalidData); } }); context.SaveChanges(); return(result.ToString()); }
private List <Model.KeyWordsMap> GetData(string keyword, string jsonStr) { List <KeyWordsMap> list = DeserializeHelper.GetMap(type, jsonStr); return(list); }
public static T Deserialize <T>(this BasicDeliverEventArgs e) where T : class { var bodyString = Encoding.UTF8.GetString(e.Body.ToArray()); return(DeserializeHelper <T> .Deserialize(bodyString)); }
public static object Deserialize(this BasicDeliverEventArgs e) { var bodyString = Encoding.UTF8.GetString(e.Body.ToArray()); return(DeserializeHelper.Deserialize(bodyString)); }