- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将 LINQ-to-SQL 用于 CRUD 功能,并且 DataContractJsonSerializer
将对象序列化为 JSON。我还使用 ASP.NET MVC 的数据绑定(bind)将值发布到执行插入的 MVC 操作。问题是它将序列化除 Id 属性之外的所有属性。我已经将模型设置为:
[Serializable]
[DataContract(Name = "campaign")]
[Table(Name = "hl.campaigns")]
public class Campaign
{
[DataMember(Name = "id")]
[Column(Name = "id", AutoSync = AutoSync.OnInsert, IsDbGenerated = true, IsPrimaryKey = true)]
public Int32 Id { get; set; }
[DataMember(Name = "createdBy")]
[Column(Name = "created_by")]
public Int32 CreatedBy { get; set; }
[DataMember(Name = "createdOnUtc")]
[Column(Name = "created_on_utc")]
public DateTime CreatedOnUtc { get; set; }
[DataMember(Name = "name")]
[Column(Name = "name", DbType = "NVarChar(256)")]
public String Name { get; set; }
/* more properties here */
}
JsonDataContractActionResult
:
public class JsonDataContractActionResult : ActionResult
{
public JsonDataContractActionResult(Object data)
{
this.Data = data;
}
public Object Data { get; private set; }
public override void ExecuteResult(ControllerContext context)
{
var serializer = new DataContractJsonSerializer(this.Data.GetType());
String output = String.Empty;
using (var ms = new MemoryStream())
{
serializer.WriteObject(ms, this.Data);
output = Encoding.Default.GetString(ms.ToArray());
}
context.HttpContext.Response.ContentType = "application/json";
context.HttpContext.Response.Write(output);
}
}
JsonDataContractActionResult
):
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Modify([Bind(Prefix = "campaign")] Campaign campaign)
{
if (campaign.Id == 0)
{
try
{
CoreDB.Campaigns.InsertOnSubmit(campaign);
CoreDB.SubmitChanges();
return JsonContract(campaign);
}
catch(Exception ex)
{
// TODO: error handling
}
}
return null; // TODO: modification
}
最佳答案
这个对象的常规 Json() 方法返回什么?
根据这篇文章... C# 中的自动支持字段可能存在问题:
http://aaron-powell.spaces.live.com/blog/cns!91A824220E2BF369!150.entry
关于asp.net-mvc - 为什么 DataContractJsonSerializer 不序列化我的 Id 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1358885/
dataElementsList : TypesAndData.DataElement list 是一个包含 50,000 条记录的列表(实际上更多,但让我们从小处开始)。我正在尝试序列化为 JSON
我注意到,使用 DataContractJsonSerializer 时,序列化的 JSON 字符串有时包含以下形式的类型信息 {"__type":"MyClass:#MyNamespace", ..
我在 Windows Phone 7.1 (Mango RC) 上使用 DataContractJsonSerializer 从网络服务中提取数据。来 self 的 Web 服务的数据如下所示: [
是否有序列化/反序列化场景 DataContractSerializer 可以处理,而DataContractJsonSerializer 不能? 特别是,我正在考虑循环引用:this MSDN pa
我将使用 DataContractJsonSerializer 进行 JSON 序列化/反序列化。 我在 JSON 数组中有两个对象类型,并希望将它们都反序列化为相应的对象类型。具有以下类定义 [Da
环境:Windows 10 Fall Creators Update (1709) 上的 Visual Studio 2017 目标:使用 DataContractJsonSerializer 序列化
using System.IO; using System.Runtime.Serialization; using System.Runtime.Serialization.Json; using
我希望有一个 Dictionary 对象的形式: var dict = new Dictionary() { {"blah", "bob"}, {"blahagain", "bob"}
我在使用我的类(class)时遇到此错误。 错误 Expecting element 'root' from namespace ''.. Encountered 'None' with name '
有没有办法改变 DataContractJsonSerializer 序列化日期的方式? 目前,它会将日期转换为如下形式: { “日期”:“/日期(1260597600000-0600)/” 我想把它
我正在使用 DataContractJsonSerializer 将我的自定义对象序列化为 JSON。但我想跳过值为 null 的数据成员。如果 DataMember 为 null,则该节点不应出现在
我有以下 JSON 片段: [{ "name": "numToRetrieve", "value": "3", "label": "Number of items to ret
当我使用 DataContractJsonSerializer 序列化枚举值时,它会序列化枚举的数值,而不是字符串名称。 IE: enum foo { bar, baz } 序列化 foo
DataContractJsonSerializer 无法正确序列化字典。 而 JavaScriptSerializer 将字典序列化为 {"abc":"xyz","def":42}例如,DataCo
我们最近遇到了一个奇怪的问题,JSON 对象的两个属性没有被反序列化。 鉴于此类: [DataContract] public class Hotel { [DataMember] publi
我们最近遇到了一个奇怪的问题,一个 JSON 对象的两个属性没有被反序列化。 给定这个类: [DataContract] public class Hotel { [DataMember] p
你好,我有这个代码: 通过 HttpClient 我收到了这个 json 字符串: {"group":3,"data":[{"count":1,"providerName":"BetaDigital"
我在我的 3-4 个方法中有一个序列化类对象的通用代码,所以我正在考虑为该代码创建一个通用函数并在所有方法中调用函数 我正在通过以下代码进行此操作 DataContractJsonSerializer
我正在上以下课: [DataContract] class ExampleClass { //Properties [DataMember(Name = "method")]
我正在使用 DataContractJsonSerializer 序列化批量数据,但遇到错误即。 引发了“System.OutOfMemoryException”类型的异常。 public stati
我是一名优秀的程序员,十分优秀!