2013-09-05 6 views
0

저는 dhtmlx 스케줄러로 초보자입니다. mvc4 면도기 구문과 함께 dbfirst를 사용합니다. 그래서 누군가가 내가 데이터베이스에서 받고 있어요 시작 시간과 종료 시각 값을 설정하는 데 도움이 있습니다하십시오테이블에서 Dhtmlx 스케줄러 구성으로 값을 할당

컨트롤러 : 여기 은 내 코드입니다

sched.Config.first_hour = 8; 
sched.Config.last_hour = 19; 
public string GetDbValues() 
      { 
       string strState = ""; 
       List<tblSettings> settings = new List<tblSettings>(); 
       settings = _config.GetSettings(); 
       var defaultState = from setting in settings 
        where (setting.Desc == "start time" 
        || setting.Desc == "end time") 
// starttime as 08 and end time as 20 from database 
       select setting.Settings; 
       foreach (var oState in defaultState) 
       {strState += oState + "|"; 
       } 
       strState = strState.Remove(strState.Length - 1); 

       return strState; 
      } 

내가 얻을 수있는 값 first_hour 및 last_hour는 출력의 문자열입니다. 이 문자열 값을 first_hour 및 last_hour에 할당하는 방법은 무엇입니까? 당신이 설정을 연결 왜 ID (INT), 설정 (NVARCHAR), 제품 설명 (NVARCHAR)

enter image description here

답변

1

:

// 나는 때문에 테이블 구조의 데시벨 값을 얻기 위해 LINQ를 사용 문자열에? 보다 포괄적 인 데이터 형식은 작업을 단순화합니다. List를 그대로 반환 한 다음 foreach를 사용하여 필요한 설정을 적용하여 반복 할 수 있습니다. 어떤 이유로 tblSettings 개체를 전달하지 않으려는 경우 사전 데이터를 선택하고 다시 값을 적용하여 값을 적용 할 수 있습니다.

var data = _config.GetSettings().ToDictionary(
       s => s.Desc, 
       s => s.Setting, 
       StringComparer.Ordinal); 


if(data.ContainsKey("start time")) 
    scheduler.Config.first_hour = int.Parse(data["start time"]); 

if (data.ContainsKey("end time")) 
    scheduler.Config.first_hour = int.Parse(data["end time"]);