2016-04-01 12 views
-6

カレンダーから日付を選択するとjsカレンダーがあり、これはパラメーターとして文字列を受け取るC#サービスを呼び出します。月Apr 18 2016 00:00:00 GMT 0500の形式で日付が取得されています。私は月曜日に月曜日を迎えたい。C#のDateTimeから終日の名前を取得

私のJavaスクリプトコードは

$scope.deliveryDateTime = { Day: new Date(2015, 11, 28, 14, 57) }; 
var DeliveryDay = $scope.deliveryDateTimeData.Day; 

     $http.get(meta.service.GetTimeAvlb+'?day='+ DeliveryDay). 
      success(function (data) { 
       debugger; 
       console.log("Data" + data); 
       $scope.AvailiableTimeData = data.data;     
       }     
      }). 
      error(function (data) { 
      }); 

はここに私のDBは月曜日値を有している月を返すここに私のC#のサービスコード

public ApiResult GetTimeAvlb(string day) 
    {      
     var splitDay = day.Split(' '); 
     string dayName1 = splitDay[0].ToString();    
     apiresilt.data = db.TimeAvaliblities.Where(ss => ss.DayName == dayName1).ToList(); 
     return apiresilt; 
    } 

dayName1です。

+0

https://msdn.microsoft.com/en-us/library/8kb3ddd4(v=vs.110).aspx –

答えて

2

.ToString("Format-String")は、必要な形式で日付を表示するために使用できます。

DateTime dt = DateTime.Now; will be the current date APR/01/2016 
string str = dt.ToString("dddd"); // this will be Friday for 04/01/2016 
+0

利用可能なフォーマット文字列の完全な一覧は、https://msdn.microsoftを参照してください。 com/ja-us/library/8kb3ddd4(v = vs.110).aspx –

+0

"これは金曜日になるだろう" ...いつものように...良い週末を過ごす! (upvoted)。 – Gustav

+0

@ jason.kaisersmith:答えに同じリンクを追加したと思います。コメントする前にそれをチェックしましたか? –

2

あなた本当にたいが、このstringDateTimeにを解析する場合は、には、文字列リテラルとしてあなたGMT 0500 (Pakistan Standard Time)一部を使用してい。 DateTime解析メソッドは、タイムゾーン名とUTCオフセット部分をサポートしていません。TimeSeparatorがありません。

次に、あなたがInvariantCultureようdddd specifier英語ベース文化とDateTime.ToStringメソッドを使用することができます。ところで

var s = "Mon Apr 18 2016 00:00:00 GMT 0500 (Pakistan Standard Time)"; 
var dt = DateTime.ParseExact(s, "ddd MMM dd yyyy HH:mm:ss 'GMT 0500 (Pakistan Standard Time)'", 
          CultureInfo.InvariantCulture); 

Console.WriteLine(dt.ToString("dddd", CultureInfo.InvariantCulture)); 

は、日付時刻文字列のようなものはありません。あなたのデータはDateTimeまたはstringです。

+0

このような単純なことでさえ素晴らしい説明、輝かしい[+] –

関連する問題