Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在JavaScript中生成C#对象文本?

如何在JavaScript中生成C#对象文本?
EN

Stack Overflow用户
提问于 2012-04-23 23:05:37
回答 1查看 6.7K关注 0票数 4

我需要以字符串的形式在JavaScript代码中创建下面的C#对象文本,并寻找一些关于如何最好地做到这一点的技巧。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
model: {
    id: "Id",
    fields: {
        Surname: { type: "string", validation: { required: true } },
        FirstName: { type: "string", validation: { required: true } },
        PrivateEmail: { type: "string", validation: { required: true } },
        DefaultPhone: { type: "string" },
        CompanyName: { type: "string" },
        CreateDate: { type: "date" },
        LastLoginDate: { type: "date" },
        IsLockedOut: { type: "boolean" }
    }
}

这定义了一个具有模型属性的客户端对象,该属性反映了我的MVC4视图模型中的每一行的样子。我可以使用简单的反射来生成字符串文本,但我更愿意使用.NET中已经可用的JSON序列化服务。为此,我认为我需要创建一个匿名对象,其属性与上面的JS属性相对应。我怎么能这么做?

编辑:,我需要循环视图模型类中的属性,并生成一个C#对象,该对象将序列化为视图模型类的JavaScript‘转换’,类似于上面的一个。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-24 00:00:49

我认为他可能要求的是将C#对象转换为JSON字符串。

试试这个:

http://msdn.microsoft.com/en-us/library/system.json.jsonobject%28v=vs.95%29.aspx

http://james.newtonking.com/pages/json-net.aspx

编辑(关于如何使用的示例):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Price = 3.99M;
product.Sizes = new string[] { "Small", "Medium", "Large" };

string json = JsonConvert.SerializeObject(product);
//{
//  "Name": "Apple",
//  "Expiry": new Date(1230422400000),
//  "Price": 3.99,
//  "Sizes": [
//    "Small",
//    "Medium",
//    "Large"
//  ]
//}

Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json);

编辑:

这是@yyamil的评论

还可以使用匿名对象,以防只为了序列化json对象而创建新类:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var notificationPayload = new
{
    notification = new
    {
        title = "Title", 
        body = "body"
    }
};

string json = JsonConvert.SerializeObject(notificationPayload);
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10293227

复制
相关文章
如何在JavaScript中访问暂未存在的嵌套对象
JavaScript 是个很神奇的东西。但是 JavaScript中的一些东西确实很奇怪,让人摸不着头脑。其中之一就是当你试图访问嵌套对象时,会遇到这个错误
前端小智@大迁世界
2019/07/02
8.1K0
C# 如何在Excel 动态生成PivotTable
Excel 中的透视表对于数据分析来说,非常的方便,而且很多业务人员对于Excel的操作也是非常熟悉的,因此用Excel作为分析数据的界面,不失为一种很好的选择。那么如何用C#从数据库中抓取数据,并在
牛嗷嗷
2018/03/30
1.1K0
JavaScript 中的对象
JavaScript 中的对象,Object,可以简单理解成“名称 - 值”对(而不是键值对:现在,ES 2015 的映射表(Map),比对象更接近键值对),不难联想 JavaScript 中的对象与下面这些概念类似:
徐建国
2023/02/23
2.4K0
JavaScript 中的对象
JavaScript中的内置对象--Number对象
JavaScript中的内置对象有以下6个: 1.Number对象 2.Boolean对象 3.Data对象 4.Math对象 5.String对象 6.Array对象 在JavaScript中,数字是一种基本的数据类型,同时JavaScript还支持Number这个对象,该对象是原始数值的包装对象。在必要的时候,JavaScript会自动地在原始数据和对象之间转换。 创建一个Number对象的2中不同方法: var num1=Number("123"); var num2=new Number("456"
八哥
2018/01/18
2.7K0
Javascript 中的对象拷贝
说到 javascript 中的对象拷贝,首先我们想到的是 Object.assign() ,  JSON.parse(JSON.stringify()) , 还有 ES6 的展开操作符[... ]
chuchur
2022/10/25
1K0
JavaScript 中如何打印对象
我们一般通过使用 console.log 把变量或者对象输出到浏览器的控制台(console)的方法调试 JavaScript 程序,但是在移动端开发 JS 程序的时候,就没有那么好方便,可以使用 console.log 的方式来调试,对于变量我们可以使用 alert 函数来输出进行调试,如果变量,使用 alert 函数的话,浏览器只会告诉你这个只是一个变量,而不能打印出里面的内容,非常不方便,于是整理总结如下的函数,能够将数组或者对象这类的结果一一打印出来,具体代码如下:
Denis
2023/04/15
2K0
JavaScript中的函数、对象
JS中的函数 声明方式 方式一 function 函数名(){ 函数体 } 方式二 var 函数名=function(){ 函数体 } 方式三 var 函数名=new
时间静止不是简史
2020/07/24
2.7K0
JavaScript中的函数、对象
JavaScript 中的代理对象
JavaScript 支持 setter 和 getter 已经很长时间了。他们用带有 set 和 get 关键字的简单语法来拦截对象的属性访问和值的修改操作。
疯狂的技术宅
2020/02/26
1.1K0
JavaScript 中的代理对象
JavaScript中动态生成表格
行:<input type="text" id="row" value="5"><br>
马克社区
2022/04/19
2K0
如何在js中创建对象
七夕临近了,没有对象的来创建一个吧 使用对象字面量: const o = { name: "zehan", greeting() { return `Hi, 我是${this.name}`; } }; o.greeting(); // "Hi, zehan" 使用构造函数: function Person(name) { this.name = name; } Person.prototype.greeting = function () { return `Hi, 我是
ZEHAN
2020/09/23
7.6K0
【译】如何在JavaScript中复制Object
不管在什么编程语言中,复制一个对象的值而不是它的引用都是一个十分常见的工作。复值对象的值和复制对象的引用的区别在与通过复制值可以得到两个有着相同值或数据,但是毫不相干的对象,复制引用意味着得到的两个对象在内存中指向相同的数据块。当objet A和object B都引用自相同的底层数据时,只要你操作object A,就会修改到object B。
腾讯IVWEB团队
2020/06/28
2.2K0
如何在JavaScript中处理大量数据
在几年之前,开发人员不会去考虑在服务端之外处理大量的数据。现在这种观念已经改变了,很多Ajax程序需要在客户端和服务器端传输大量的数据。此外,更新DOM节点的处理在浏览器端来看也是一个很耗时的工作。而且,需要对这些信息进行分析处理的时候也很可能导致程序无响应,浏览器抛出错误。 将需要大量处理数据的过程分割成很多小段,然后通过JavaScript的计时器来分别执行,就可以防止浏览器假死。先看看怎么开始: function ProcessArray(data,handler,callback){ Process
CSDN技术头条
2018/02/09
3K0
如何在 Chrome 中执行 JavaScript 代码
要在浏览器中执行 JavaScript 脚本,首先你的浏览器得支持。现在主流推荐 Chrome 浏览器,也可以使用基于 Chromium 的 Edge 浏览器。下面来介绍如何在 Chrome 中打开开发者工具,以及如何在开发者工具中运行调试 JavaScript 代码。
村雨遥
2022/03/14
6.1K0
如何在 Chrome 中执行 JavaScript 代码
如何在 JS 中“深冻结”对象?
1.如果咱们想要确保对象被深冻结,就必须创建一个递归函数来冻结对象类型的每个属性:
程序狗
2021/09/15
1.7K0
理解JavaScript中的window对象
每个JavaScript环境都有一个全局对象(global object)。在全局范围内创建的任何变量实际上都是这个对象的属性,而任何函数都是它的方法。在浏览器环境中,全局对象是window对象,它代表了包含网页的浏览器窗口。
chuckQu
2022/08/19
1.7K0
理解JavaScript中的window对象
javascript中Math对象的用法
注释:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。
OECOM
2020/07/01
1K0
JavaScript 中对象的深拷贝
在JavaScript中,对对象进行拷贝的场景比较常见。但是简单的复制语句只能对对象进行浅拷贝,即复制的是一份引用,而不是它所引用的对象。而更多的时候,我们希望对对象进行深拷贝,避免原始对象被无意修改。
哲洛不闹
2018/09/18
1K0
JavaScript 中对象的深拷贝
【点滴】如何在JavaScript中清空数组?
在使用 JavaScript 数组时,一个很常见的问题是如何清空数组并删除其所有元素。有几种方法可以解决这个问题,每种方法都各有利弊。
疯狂的技术宅
2021/03/16
3.3K0
如何在 JavaScript 中处理 HTML 事件?
在Web开发中,JavaScript是一种常用的脚本语言,用于增强网页的交互性和动态性。HTML事件是用户与网页交互时发生的动作,如点击、鼠标移动、键盘输入等。本文将介绍如何在JavaScript中处理HTML事件,以实现更丰富的用户体验和交互功能。
海拥
2023/06/27
3170
如何在 JavaScript 中处理 HTML 事件?
点击加载更多

相似问题

如何在Typoscript中定义对象变量(如javascript)

10

Javascript对象,如函数

10

从c#对象自动生成javascript对象模型

45

生成公共"ID文本“(如Stackoverflow)

43

删除JavaScript对象属性,如

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文