2016-02-14 5 views
0

Этот код возвращает мне ошибку, и я хочу, чтобы сделать эту операцию:Как сделать эту операцию (+ =) в промежуток времени в MVC

foreach (var item in db.Panchers) 
{ 
    string x = "00:00:00"; 
    TimeSpan zero = TimeSpan.Parse(x); 
    item.AllDate = zero; 
    foreach (var items in db.Times.Where(items => items.Name == item.Pancher1)) 
    { 
     TimeSpan span += items.All.Value; 
     decimal m = Convert.ToDecimal((item.AllDate).Value.TotalMinutes); 
     decimal h = m/60; 
     item.AllDate=h; 
     db.SaveChanges(); 
    } 
} 

Моя ошибка в линии TimeSpan span += items.All.Value.

+0

Пожалуйста, сообщите об ошибке. – Rafael

+0

У меня есть трудное время, которое не может быть окончательно отвлечено комбинацией панчеров и дат. –

+0

В любом случае ... может быть, вам стоит объяснить, чего вы пытаетесь достичь. Похоже, вы просто хотите получить сумму 'TimeSpan'. –

ответ

3

Оператор += может использоваться только с существующими переменными, так как он принимает текущее значение переменной и добавляет к нему какое-либо другое значение, прежде чем назначать результат обратно переменной. В некотором смысле следующие два выражения эквивалентны:

x += y; 
x = x + y; 

Поскольку переменная на левой стороне должен иметь значение прежде, оператор += не может появиться с объявлением переменной. Поэтому вам сначала нужно объявить переменную, присвоить ей значение, а затем вы можете использовать оператор +=.

Например:

// declare the variable, and assign a zero timespan to it 
TimeSpan span = TimeSpan.Zero; 

// use the += operator to add an hour 
span += TimeSpan.FromHours(1); 
+0

Я не могу его решить, я хочу сделать foreach на db и вернуть мне общее количество этого поля (items.All), которые включают много раз, а затем сохранить его в другом поле (TimeSpan span + = items.All.Value;) –