У меня есть 2 таблицы
1. Клиент
2. ОперацииПростой математический вопрос с Linq, простой регистрации запросов, Нули и т.д.
Операции могут привести: Кредиты или дебет («C» или ' D 'в поле символов) вместе с полями даты и количества.
я должен рассчитать баланс счета каждого клиента с помощью Linq ... Результат должен также показать баланс 0 для клиентов, которых не совершают операции еще
У меня есть следующие функции с утверждением Linq, но я знаю, это может быть сделано лучше и быстрее, короче, не так ли? Которые будут?
public static double getBalance(ref ClasesDeDatosDataContext xDC, string SSN,
int xidClient)
{
var cDebits =
from ops in xDC.Operations
where (ops.idClient == xidClient) && (ops.OperationCode == 'D')
select ops.Ammount;
var cCredits =
from ops in xDC.Operations
where (ops.idClient == xidClient) && (ops.OperationCode == 'C')
select ops.Ammount;
return (double)(cCredits.Sum() - cDebits.Sum());
}
Спасибо !!!
Я получаю исключение во время выполнения ... Нулевое значение не может быть назначен членом с типом System.Double, который не является обнуляемым тип значения. – Enrique
С какими из них? Может ли поле Amount быть нулевым? Могут ли быть другие операции, кроме «C» или «D»? – Guffa
Привет, Guffa ... проверьте скриншот. Это исключение во время выполнения (некоторые сообщения находятся на испанском языке) ... http://img130.imageshack.us/i/sshot1s.jpg/ – Enrique