小编Sla*_*ade的帖子

SQL Server OPENJSON读取嵌套的json

我想在SQL Server 2016中解析一些json.有一个Projects-> Structures-> Properties的层次结构.我想编写一个解析整个层次结构的查询,但我不想按索引号指定任何元素,即我不想做这样的事情:

openjson (@json, '$[0]')
Run Code Online (Sandbox Code Playgroud)

要么

openjson (@json, '$.structures[0]')
Run Code Online (Sandbox Code Playgroud)

我有这个想法,我可以读取顶级项目对象的值以及表示它下面的结构的json字符串,然后可以单独解析.问题是以下代码不起作用:

declare @json nvarchar(max)
set @json = '
[
   {
      "IdProject":"97A76363-095D-4FAB-940E-9ED2722DBC47",
      "Name":"Test Project",
      "structures":[
         {
            "IdStructure":"CB0466F9-662F-412B-956A-7D164B5D358F",
            "IdProject":"97A76363-095D-4FAB-940E-9ED2722DBC47",
            "Name":"Test Structure",
            "BaseStructure":"Base Structure",
            "DatabaseSchema":"dbo",
            "properties":[
               {
                  "IdProperty":"618DC40B-4D04-4BF8-B1E6-12E13DDE86F4",
                  "IdStructure":"CB0466F9-662F-412B-956A-7D164B5D358F",
                  "Name":"Test Property 2",
                  "DataType":1,
                  "Precision":0,
                  "Scale":0,
                  "IsNullable":false,
                  "ObjectName":"Test Object",
                  "DefaultType":1,
                  "DefaultValue":""
               },
               {
                  "IdProperty":"FFF433EC-0BB5-41CD-8A71-B5F09B97C5FC",
                  "IdStructure":"CB0466F9-662F-412B-956A-7D164B5D358F",
                  "Name":"Test Property 1",
                  "DataType":1,
                  "Precision":0,
                  "Scale":0,
                  "IsNullable":false,
                  "ObjectName":"Test Object",
                  "DefaultType":1,
                  "DefaultValue":""
               }
            ]
         }
      ]
   }
]';

select IdProject, Name, structures
from   openjson (@json)
with
(
    IdProject …
Run Code Online (Sandbox Code Playgroud)

parsing json hierarchy sql-server-2016 open-json

28
推荐指数
3
解决办法
3万
查看次数

Asp.net Core 2.0 RequestSizeLimit属性不起作用

我正在Asp.net core 2.0中创建一个允许上传文件的网站.我很快就遇到了30MB上传限制的问题,并404从服务器收到响应.低于此限制一切正常.

我在网上找到了许多像这样的解决方案: 增加Asp.Net核心中的上传文件大小.我的问题是我无法使这个解决方案工作,我仍然得到了404响应30MB.

我的电话是ajax,就像这样:

function uploadMedia(isPhoto, files) {
  var type;
  if (isPhoto) {
    type = "i";
  } else {
    type = "v";
  }

  var data = new FormData();
  if (files.length > 0) {
    for (idx = 0; idx < files.length; idx++) {
      if (files[idx].size < 1074790400) {
        data.append("fileImage" + idx, files[idx]);
      } else {
        BootstrapDialog.show({
          type: BootstrapDialog.TYPE_WARNING,
          title: "Validation Error",
          message: "The maximum file size for images is 1GB. …
Run Code Online (Sandbox Code Playgroud)

javascript c# asp.net-core

13
推荐指数
2
解决办法
4624
查看次数

.net Core 2.0文件上传大小限制

我在.net core 2.0 MVC Web应用程序中上传大文件时遇到了麻烦.

我看过这篇文章,比如这篇文章,展示了如何增加.net core 2.0中的文件大小限制: 增加Kestrel的上传请求长度限制

所以,按照这个例子,我尝试了两种选择.我目前在我的Program.cs中有这个:

        public static IWebHost BuildWebHost(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .UseStartup<Startup>()
            .UseKestrel(options => options.Limits.MaxRequestBodySize = null)
            .Build();
Run Code Online (Sandbox Code Playgroud)

...并且我在控制器上的ajax文件上传方法如下所示:

    [HttpPost]
    [RequestSizeLimit(1_074_790_400)]
    [Route("api/article/uploadfile/{mediaType}")]
    public async Task<IActionResult> UploadFile(string mediaType)
Run Code Online (Sandbox Code Playgroud)

我正在使用上传的文件 Request.Form.Files

视图上的javascript如下所示:

$('#upload-videos').change(function () {
    var files = $("#upload-videos").get(0).files;
    uploadMedia(false, files);
})

function uploadMedia(isPhoto, files) {
    var type;
    if (isPhoto) {
        type = "i";
    }
    else {
        type = "v";
    }

    var data = new FormData();
    if (files.length > 0) {
        for (idx = 0; idx …
Run Code Online (Sandbox Code Playgroud)

javascript c# asp.net-mvc file-upload asp.net-core

8
推荐指数
1
解决办法
4492
查看次数