Я искал некоторые рекомендации по передовой практике (учитывая память и время процессора) для обработки полей Nullable<T>
, возвращенных из хранимой процедуры при использовании Linq2Sql.Как обращаться с Nullable <T> типов, возвращаемых из хранимой процедуры?
Пожалуйста, рассмотрим следующий сценарий и ограничения:
- Я хочу, чтобы избежать использования fieldValue.HasValue проверки везде в коде. Таким образом, мне нужно заменить все
Nullable<T>
нормальными свойствами (esp DateTime, Double, Int) с некоторым значением по умолчанию. - Я ожидаю прочитать ~ 1 миллион объектов с ~ 20 полями типа Nullable.
- Использование памяти и процессора является важным фактором.
- Требование состоит в том, чтобы получить результат хранимой процедуры в объекте (а не DataRow) и, таким образом, используя Linq2Sql.
Пожалуйста, поделитесь своим мнением или опытом над подобной ситуацией.
Спасибо за ваш интерес.
Что вы хотите, если поле пустое? – msarchet
Является ли LINQ to SQL требованием жесткого ядра?Причина, по которой я спрашиваю, заключается в том, что есть накладные расходы и, возможно, лучше всего выполнить процедуры хранения или запросы по причинам производительности/памяти. –
«Мне нужно заменить все ... некоторым значением по умолчанию». - с этим ограничением вы существенно меняете смысл данных в тех случаях, когда выбранным по умолчанию значением являются фактические данные. Если данные никогда не содержат эти значения по умолчанию в качестве допустимых значений (что всегда можно утверждать), почему вы используете «Nullable» (или, допустим, нулевой столб)? –