0

このソリューションで提案されているソリューションを試しました

私はクラスを持っています

public class MyClass
{
    [IgnoreDataMember]
    public DateTime? Date { get; set; }
}

JavaScriptSerializer が結果をシリアル化すると、日付時刻が変更されます。たとえば、シリアル化後にデータベースにある場合、タイムゾーン外の場所でアプリケーションがホストされているため2012-07-20返されます。そのため、多くの問題に直面しています。2012-07-21

4

1 に答える 1

2

この属性を使用し[ScriptIgnore]て、プロパティが JavaScriptSerializer でシリアライズされないようにすることができます。

public class MyClass
{
    [ScriptIgnore]
    public DateTime? Date { get; set; }

    ... some other properties
}

そうは言っても、これを行う正しい方法は、応答に含めたくないプロパティを単に含まないビューモデルを使用し、配管でドメインモデルを拷問する代わりに、このビューモデルを返すことですそれらが完全に不可知であるべきシリアライゼーションに関するコード。

于 2012-07-20T06:47:16.030 に答える