#c# #.net #linq-to-sql
#c# #.net #linq-to-sql
Вопрос:
У меня такая же проблема. который я хочу, чтобы оценка caculator для студента. Я сделал:
var cosrse = from ssh in cn.DB.ScoreSheets
where ssh.CourseID == CourseID
select new
{
Student = ssh.Student.LastName " " ssh.Student.FirstName,
ssh.Student.StudentID, Assignment = ssh.Assignment,
Project = ssh.Project,
ssh.Midterm,
ssh.Endterm,
ssh.Practice,
FinalMatch = ssh.Midterm * 0.2 ssh.Project * 0.3
ssh.Endterm * 0.5 // new a propety FinalMatch
};
Я хочу добавить столбец FinalMatch и назначить: ssh.Midterm * 0.2 ssh.Project * 0.3 ssh.Endterm * 0.5
но я не получаю никакого результата для FinalMatch.
Здесь у меня есть выбор из двух таблиц: [Student], [ScoreSheet] у всех таблиц есть записи. Я хочу ввести оценку для совпадения результатов student и caculater.
Ждем ваших решений
С уважением, Уильям!
Комментарии:
1. Если вы (временно) удалите поле FinalMatch, получите ли вы какие-либо результаты? Я думаю, может быть, это не вычисление.
2. В качестве примечания
Project = ssh.Project,
бесполезно, просто сделайтеssh.Project,
3. Я попробовал тот же запрос, что и вы, но я получаю результаты вы уверены, что во всех строках для оценки есть записи? Равно
FinalMatch
нулю или чему-то еще…4. Являются
Midterm
,Project
, илиEndterm
обнуляемыми значениями? Если это так, имеет ли какая-либо из записей значение null, а не число?5. спасибо всем, я исправил эту ошибку, как сказал Тибодо, тогда, если значение Midtern, Project или Endtern равно нулю => результат равен нулю. Пример 10 null = null
Ответ №1:
Если это переведено в SQL, вы можете получить несколько неприятных результатов 0 (ноль), когда одно или несколько значений равны null
.