asp.net mvc操作方法发布除json数据之外的数据
asp.net mvc action method post data except as json data
我有一个名为Parcel的模型类。该地块包括名称、中心点参数:
public class Parcel
{
public string Name { get; set; }
public object CenterPoint { get; set; }
}
我正在从地图上获取这些参数。单击时,将在javascript中的变量中计算和设置地块中心点CenterPoint是一个json对象名称是纯文本数据。
我想在数据库中将CenterPoint保存为Json对象。当我在地图上再次找到CenterPoint时,我可以画出来
当我按如下方式将数据发布到操作方法时,我的CenterPoint对象如下所示
实际上应该是这样的:{type="point",x=121.3238004076,y=452.024614968}
[HttpPost]
public ActionResult SaveParcel(Parcel parcel)
{
return Json(new {parcel}, JsonRequestBehavior.AllowGet);
}
我的javascript任务在这里:
var postata = {
"Name": document.getElementById("name").value,
"CenterPoint": document.getElementById("center").value
};
$http({
method: 'POST',
url: "/Parcel/SaveParcel/",
data: postata,
}).success(function (data, status, headers, config) {
console.log(data);
});
如何将JSON保存和获取为原始格式。或者有没有一个好的方法可以通过?
我想问题是…JSON反序列化程序会将您的Point
转换为匿名类(将其放入通用Object
属性中)吗?AFAIK否:请参阅这篇文章了解详细信息(如果您真的需要,可以提供手工解决方案)。
我将定义一个Location
类:
public class Location
{
public type { get; set; }
public float x { get; set; }
public float y { get; set; }
}
然后将Parcel
更改为:
public class Parcel
{
public string Name { get; set; }
public Location CenterPoint { get; set; }
}
请注意"…在通用Object
属性内…"。反序列化程序不会执行此操作,但Json.NET会执行dynamic
对象所需的操作,然后您可以将Parcel
类重写为:
public class Parcel
{
public string Name { get; set; }
public dynamic CenterPoint { get; set; }
}
相关文章:
- 无法使用变量访问数据 JSON
- 使用 ng-repeat解析不均匀数据/ json对象
- 在没有jsonp的情况下从另一个域获取数据(json格式)
- 如何获取带参数的数据json
- 如何在android中显示实时雅虎金融股票数据..json格式如下所示
- 使用 JavaScript 将数据 json 显示到网页中
- 高位图表来源于API数据(JSON)
- 使用动态数据json初始化同位素
- Django:将数据JSON从视图传递给javascript
- 存储配置数据 (json)
- 未捕获的SyntaxError:意外的标识符图像数据json
- 接收数据json/jquery
- Jquery数据表数据json
- 不能在cakephp中使用数组数据json
- 在不锁定浏览器的情况下,将大数据JSON从REST请求反序列化为对象
- 如何读取数据JSON格式数组的字符串数据
- 我有一个流星应用程序,需要从/public/_assets/results/mmresults读取数据.Json文件,在
- 数据json不显示在html
- 使用2个下拉列表创建2个并排的表行来比较数据- JSON
- 需要将复杂的json对象转换为合适的angularjs UI树数据json结构