C#, эквивалентные из IsNull (), функционируют в SQL Server

107
задан Florian Greinacher 14 November 2011 в 07:58
поделиться

5 ответов

Это назвало пустой оператор (??) объединения:

myNewValue = myValue ?? new MyValue();
191
ответ дан Tim Cooper 24 November 2019 в 03:40
поделиться

К сожалению, нет никакого эквивалента пустому оператору объединения, который работает с DBNull; для этого необходимо использовать тернарный оператор:

newValue = (oldValue is DBNull) ? null : oldValue;
14
ответ дан Robert Rossney 24 November 2019 в 03:40
поделиться

Поскольку работа с DB Аннулирует, я создал набор для своих приложений VB. Я называю их Cxxx2, поскольку они подобны встроенным функциям Cxxx VB.

Вы видите их в моем проекте

Расширений CLR http://www.codeplex.com/ClrExtensions/SourceControl/FileView.aspx?itemId=363867&changeSetId=17967

1
ответ дан Jonathan Allen 24 November 2019 в 03:40
поделиться

Это предназначено половина как шутка, так как вопрос довольно глуп.

public static bool IsNull (this System.Object o)
{
   return (o == null);
}

Это - дополнительный метод, однако он расширяет Систему. Объект, таким образом, каждый объект Вы используете теперь, имеет IsNull () метод.

Тогда можно сохранить тонны кода путем выполнения:

if (foo.IsNull())

вместо супер Ламе:

if (foo == null)
-10
ответ дан FlySwat 24 November 2019 в 03:40
поделиться
    public static T IsNull<T>(this T DefaultValue, T InsteadValue)
    {

        object obj="kk";

        if((object) DefaultValue == DBNull.Value)
        {
            obj = null;
        }

        if (obj==null || DefaultValue==null || DefaultValue.ToString()=="")
        {
            return InsteadValue;
        }
        else
        {
            return DefaultValue;
        }

    }

//This method can work with DBNull and null value. This method is question's answer
0
ответ дан 24 November 2019 в 03:40
поделиться