CrazyIter_Bin 11 months ago
parent
commit
486ba47a1c

+ 11 - 5
TEAMModelOS.SDK/DI/AzureCosmos/AzureCosmosFactory.cs

@@ -48,7 +48,7 @@ namespace TEAMModelOS.SDK.DI
                 };
                 var cm = CosmosClients.GetOrAdd(name, x => new CosmosClient(_optionsMonitor.Get(name).CosmosConnectionString, new CosmosClientOptions()
                 {
-                    Serializer= new CosmosSystemTextJsonSerializer(jsonSerializerOptions),
+                   // Serializer= new CosmosSystemTextJsonSerializer(jsonSerializerOptions),
                     ApplicationRegion = region
                 }));
                 return cm;
@@ -94,10 +94,16 @@ namespace TEAMModelOS.SDK.DI
 
         public override Stream ToStream<T>(T input)
         {
-            MemoryStream streamPayload = new MemoryStream();
-            this.systemTextJsonSerializer.Serialize(streamPayload, input, input.GetType(), default);
-            streamPayload.Position = 0;
-            return streamPayload;
+            if (input!= null)
+            {
+                MemoryStream streamPayload = new MemoryStream();
+                this.systemTextJsonSerializer.Serialize(streamPayload, input, input.GetType(), default);
+                streamPayload.Position = 0;
+                return streamPayload;
+            }
+            else {
+                return new MemoryStream();
+            }
         }
     }
     // </SystemTextJsonSerializer>

+ 26 - 6
TEAMModelOS/Controllers/Both/ItemController.cs

@@ -1149,18 +1149,38 @@ namespace TEAMModelOS.Controllers
                 }
                 if (scope.ToString().Equals("school"))
                 {
-                    await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "School").GetItemQueryStreamIteratorQuery(queryDefinition: cosmosDbQuery.CosmosQueryDefinition, requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"Item-{code}") }))
-                    {
-                        using var json = await JsonDocument.ParseAsync(item.Content);
 
-                        if (json.RootElement.TryGetProperty("_count", out JsonElement count) && count.GetUInt16() > 0)
+
+                    // var s =  client.GetContainer(Constant.TEAMModelOS, Constant.School).GetItemQueryStreamIterator(queryText: "select c.id,c.code,c.repairResource, c.periodId,c.question,c.useCount,c.level,c.field,c.knowledge,c.type,c.option,c.createTime,c.answer,c.explain,c.children,c.score,c.gradeIds,c.subjectId,c.blob,c.scope from c  where 1=1  and  c.pid =  null and  c.subjectId in ( '8b94c6b6-2572-41e5-89b9-a82fcf13891e'  )  Order By c.createTime DESC ",
+                    var s = client.GetContainer(Constant.TEAMModelOS, Constant.School).GetItemQueryStreamIterator(queryDefinition:cosmosDbQuery.CosmosQueryDefinition  ,
+                        requestOptions: new QueryRequestOptions() { PartitionKey= new PartitionKey("Item-hbcn") });
+                    while (s.HasMoreResults) { 
+                        var response = await s.ReadNextAsync();
+                        if (response.Content!=null)
                         {
-                            foreach (var obj in json.RootElement.GetProperty("Documents").EnumerateArray())
+                            using var json = await JsonDocument.ParseAsync(response.Content);
+
+                            if (json.RootElement.TryGetProperty("_count", out JsonElement count) && count.GetUInt16() > 0)
                             {
-                                items.Add(obj.ToObject<object>());
+                                foreach (var obj in json.RootElement.GetProperty("Documents").EnumerateArray())
+                                {
+                                    items.Add(obj.ToObject<object>());
+                                }
                             }
                         }
                     }
+                    //await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "School").GetItemQueryStreamIteratorQuery(queryDefinition: cosmosDbQuery.CosmosQueryDefinition, requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"Item-{code}") }))
+                    //{
+                    //    using var json = await JsonDocument.ParseAsync(item.Content);
+
+                    //    if (json.RootElement.TryGetProperty("_count", out JsonElement count) && count.GetUInt16() > 0)
+                    //    {
+                    //        foreach (var obj in json.RootElement.GetProperty("Documents").EnumerateArray())
+                    //        {
+                    //            items.Add(obj.ToObject<object>());
+                    //        }
+                    //    }
+                    //}
                 }
                 //ResponseBuilder builder = ResponseBuilder.custom();
                 /* List<ItemInfo> items = new List<ItemInfo>();

+ 1 - 1
TEAMModelOS/Properties/launchSettings.json

@@ -20,7 +20,7 @@
     },
     "TEAMModelOS": {
       "commandName": "Project",
-      "launchBrowser": true,
+      "launchBrowser": false,
       //"launchUrl": "login",
       //"applicationUrl": "http://kong.sso.com:5000",
       "applicationUrl": "https://localhost:5001;http://localhost:5000",