2017-06-23 102 views
-2

datetime属性を日付フォーマットdd/mm/yyyにフォーマットしてjsonResultsとして返すにはどうすればよいですか?これは私のコードです:あなたDateReceived以来フォーマットdatetime dd/mm/yyyy

var alljobs = from jobs_new in db.Jobs_New 
    select new { 
     jobs_new.JobID, 
     //below code not working 
     DateReceived = jobs_new.DateReceived.GetValueOrDefault().ToString("dd/mm/yyyy") 
    }; 
+1

「作業していない」とは、正しい日付が返されないか、必要な形式ではないことを意味しますか? –

+1

「機能していません」というのは問題の説明ではありません。 [MCVE]ガイダンスと[編集]ポストを読んで、完全なサンプル(必要なデータをインラインで含む)と正確なエラーメッセージまたは期待/実際の結果を提供してください。 –

+0

必須のXKCDリンク - [Iso 8601](https://xkcd.com/1179/) –

答えて

1

が文字列であるように思わは、まずエンティティへのLINQれをサポートしていません、それDateTime.Parse()する必要があります。だから、あなただけの最初にすべてを読み込むことができ、その後、その後の変換を行います。あなたは日付が空またはnullの場合に何かを渡すことができ

var alljobs = (from jobs_new in db.Jobs_New).ToList(); 

var alljobsWithDate = from alljobs 
      select new { 
       jobs_new.JobID, 
       DateReceived = string.IsNullOrEmpty(jobs_new.DateReceived.GetValueOrDefault()) ? null : DateTime.Parse(jobs_new.DateReceived.GetValueOrDefault().ToString("dd/MM/yyyy") 
      }; 

、トライコード

0

? "if date is empty" :で:

var alljobs = (from jobs_new in db.Jobs_New.AsEnumerable() 
    select new{ 
     jobs_new.JobID, 
     DateReceived = jobs_new.DateReceived==null?"":jobs_new.DateReceived.ToString("dd/mm/yyyy") 
    }).ToList(); 

もう一つの解決策あなたはグローバリゼーション・カルチャーを使用しています。

Web.Config書き込み

<system.web> 
<globalization culture="en-GB"/> 
<system.web> 
関連する問題