【发布时间】:2016-09-28 20:42:26
【问题描述】:
我真的不擅长这个。 我正在使用淘汰赛将数据从前端保存到后端。我想要做的是将敲除数组保存到 c# 中的 IEnumerable 对象
public class VDenuncia
{
public int IdDenuncia { get; set; }
public string Name{ get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
public IEnumerable<VFiles> Files { get; set; }
}
正如你在下面看到的,这是我的模型
public class VFiles
{
public int IdFile { get; set; }
public byte[] File { get; set; }
public string Extension { get; set; }
}
这是文件的模型。
首先我将文件保存到数据库并返回插入的 ID,我想将该 ID 保存在 VDenuncia 中,但不知道如何开发它。
我正在使用 ajax 将 JS 转为 C#,但是将 observableArray 转换为 IEnumerable 时在 C# 中没有得到任何对象
$.ajax({
type: 'POST',
url: 'Home/Save',
data: { denuncia: data },
async: true,
success: function (data) {
从 HomeController 保存操作
[HttpPost]
public async Task<JsonResult> Save(VDenuncia denuncia)
{
var manager = new DenunciaManager();
var result = await manager.SaveDenuncia(denuncia);
return new JsonResult
{
Data = result.Folio,
MaxJsonLength = int.MaxValue,
JsonRequestBehavior = JsonRequestBehavior.AllowGet
};
}
这是数据的价值。
var data = {
Name: self.Name(),
LastName: self.LastName(),
FirstName: self.FirstName(),
Files: ({
IdFile: self.IdFile(),
File: self.File(),
Extension: self.Extension(),
})
};
解决方案:
给出的解决方案有效,但我意识到我正在使用数组,我只更改数据接下来的内容:
Files: [{
IdFile: self.IdFile(),
File: self.File(),
Extension: self.Extension(),
}]
【问题讨论】:
-
你能分享你在 HomeController 中的“保存”操作吗?
-
当然,我已经编辑了我的问题
-
邮政编码,而不是它的图像。
data的值是多少。如果格式正确,它将很好地绑定(但很可能您需要对数据进行字符串化并使用contentType: 'json') -
有数据的内容,我想我做的一切都好,但不工作
-
将
data: { denuncia: data },更改为JSON.stringify({ denuncia: data })并添加contentType: 'json',
标签: c# asp.net-mvc knockout.js model-binding