public static async Task WriteToStream(Stream StreamToWrite, DataSet DS, CancellationToken cancellationToken, JsonWriterOptions JsonWriterOptions)
        {
            using (System.Text.Json.Utf8JsonWriter writter = new System.Text.Json.Utf8JsonWriter(StreamToWrite, JsonWriterOptions))
            {
                writter.WriteStartObject();

                writter.WriteStartArray("Tables");

                if (DS.Tables.Count > 0)
                {
                    foreach (DataTable table in DS.Tables)
                    {
                        writter.WriteStartObject();

                        writter.WriteString("TableName", table.TableName);

                        writter.WriteStartArray("Columns");
                        foreach (DataColumn column in table.Columns)
                        {
                            writter.WriteStartArray();
                            JsonSerializer.Serialize(writter, column.ColumnName);
                            JsonSerializer.Serialize(writter, ColumnType(column));
                            writter.WriteEndArray();
                        }
                        writter.WriteEndArray();

                        writter.WriteStartArray("Rows");

                        await writter.FlushAsync(cancellationToken);

                        if (table.Rows.Count > 0)
                        {
                            foreach (DataRow row in table.Rows)
                            {
                                writter.WriteStartArray();
                                foreach (var item in row.ItemArray)
                                {
                                    JsonSerializer.Serialize(writter, item);
                                }
                                writter.WriteEndArray();;
                            }
                        }

                        writter.WriteEndArray();

                        writter.WriteEndObject();
                    }
                }

                writter.WriteEndArray();
                writter.WriteEndObject();
            }

            await StreamToWrite.FlushAsync();
        }
Beispiel #2
0
 public void ToJson(System.Text.Json.Utf8JsonWriter w)
 {
     w.WriteStartObject();
     w.WriteString("id", Hid);
     w.WriteString("description", Description);
     w.WriteString("tag", Tag);
     w.WriteString("avatar_url", AvatarUrl);
     w.WriteString("created", Formats.TimestampExportFormat.Format(Created));
     w.WriteString("tz", UiTz);
     w.WriteEndObject();
 }
Beispiel #3
0
        public string Serialize(MeetingModelRegular value)
        {
            var options = new JsonWriterOptions
            {
                Indented = true
            };

            using (var stream = new System.IO.MemoryStream())
            {
                using (var writer = new System.Text.Json.Utf8JsonWriter(stream, options))
                {
                    writer.WriteStartObject();
                    writer.WriteString("MeetingType", MeetingType);
                    writer.WriteString("ID", ID);
                    writer.WriteString("DayOfMeeting", DayOfMeeting);
                    writer.WriteString("Toastmaster", Toastmaster);
                    writer.WriteString("Speaker1", Speaker1);
                    writer.WriteString("Speaker2", Speaker2);
                    writer.WriteString("GeneralEvaluator", GeneralEvaluator);
                    writer.WriteString("Evaluator1", Evaluator1);
                    writer.WriteString("Evaluator2", Evaluator2);
                    writer.WriteString("TableTopics", TableTopics);
                    writer.WriteString("AhCounter", AhCounter);
                    writer.WriteString("Grammarian", Grammarian);
                    writer.WriteString("Timer", Timer);
                    writer.WriteString("QuizMaster", QuizMaster);
                    writer.WriteString("Video", Video);
                    writer.WriteString("HotSeat", HotSeat);
                    writer.WriteString("Attendees", Attendees?.ToString());
                    writer.WriteString("Resolved", Resolved);
                    writer.WriteEndObject();
                }
                return(Encoding.UTF8.GetString(stream.ToArray()));
            }

            // return JsonSerializer.ToString<MeetingModelRegular>(value, options);
        }