Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从文件夹项目ASP.NET读取JSON文件_Javascript_Asp.net_Json_Ajax_Asp.net Mvc - Fatal编程技术网

Javascript 如何从文件夹项目ASP.NET读取JSON文件

Javascript 如何从文件夹项目ASP.NET读取JSON文件,javascript,asp.net,json,ajax,asp.net-mvc,Javascript,Asp.net,Json,Ajax,Asp.net Mvc,我在脚本文件夹中创建了一个文件夹“js”,并创建了一个带有数组citys的json文件 我尝试读取此文件夹中的此文件,并将列表返回到我的选择视图 { "cidade": [ { "Nome": "Curitiba" }, { "Nome": "São Paulo" }, { "Nome": "Rio de Janeiro" }, { "Nome": "Santa Catarina" }, { "Nome": "Rio Grande do Sul" },

我在脚本文件夹中创建了一个文件夹“js”,并创建了一个带有数组citys的json文件 我尝试读取此文件夹中的此文件,并将列表返回到我的选择视图

{
  "cidade": [
    { "Nome": "Curitiba" },
    { "Nome": "São Paulo" },
    { "Nome": "Rio de Janeiro" },
    { "Nome": "Santa Catarina" },
    { "Nome": "Rio Grande do Sul" },
    { "Nome": "Acre" },
    { "Nome": "Goias" }
  ]
}
我的班级:

public class Cidade {
  public string Nome {
    get;
    set;
  }
}

public class Cidades {
  public IList < Cidade > cidades {
    get;
    set;
  }
}
    public class Cidades
{
    public string Nome { get; set; }
}

public class Cidade
{
    public List<Cidades> cidade { get; set; }
}
公共类Cidade{
公共字符串名称{
得到;
设置
}
}
公共类Cidades{
公共IListcidades{
得到;
设置
}
}
我的行动是:

public class Cidade {
  public string Nome {
    get;
    set;
  }
}

public class Cidades {
  public IList < Cidade > cidades {
    get;
    set;
  }
}
公共类Cidade{
公共字符串名称{
得到;
设置
}
}
公共类Cidades{
公共IListcidades{
得到;
设置
}
}
这是错误:

此代码将具有json文件路径,而不是json文件的内容:

  var json = Server.MapPath("~/Scripts/js/cidade.json");
要读取json内容,应将其更改为以下内容:

  var json = System.IO.ReadAllText(Server.MapPath("~/Scripts/js/cidade.json"));
您的json数据中还缺少一个
s
。您的类有一个属性
IList cidades
,而您的json有一个键作为
cidad

我的最终代码:

    [HttpGet]
    public ActionResult Get()
    {
        var json = System.IO.File.ReadAllText(Server.MapPath(@"~/App_Data/cidade.json"));
        Cidade cidade = JsonConvert.DeserializeObject<Cidade>(json);
        return View(cidade);

    }
[HttpGet]
公共行动结果获取()
{
var json=System.IO.File.ReadAllText(Server.MapPath(@“~/App_Data/cidade.json”);
Cidade Cidade=JsonConvert.DeserializeObject(json);
返回视图(cidade);
}
我的班级:

public class Cidade {
  public string Nome {
    get;
    set;
  }
}

public class Cidades {
  public IList < Cidade > cidades {
    get;
    set;
  }
}
    public class Cidades
{
    public string Nome { get; set; }
}

public class Cidade
{
    public List<Cidades> cidade { get; set; }
}
公共类Cidades
{
公共字符串Nome{get;set;}
}
公开课
{
公共列表ciade{get;set;}
}

问题出在哪里?您好,我现在在帖子中添加图片,显示错误您是否检查了json是否正确加载?似乎不是……用cidade.json中的json替换json变量。它可能会工作
Server.MapPath
返回一个路径。您需要阅读文件.my json var return:“C:\\Users\\username\\source\\repos\\Exercicio 4\\Exercicio 4\\Scripts\\js\\cidade.json”您还需要修复json。您的
Cidades
正在查找
Cidades
(带s),而您的json具有键
cidade