Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / System.Object и null / 16 сообщений из 16, страница 1 из 1
18.07.2006, 15:37
    #33861264
ndStar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
Помогите плиз! Как сравнить?


obj:System.Object;
...
if obj=null

дает ошибку несовместимости Object и Variant
...
Рейтинг: 0 / 0
18.07.2006, 15:53
    #33861343
Nikolay_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
S>дает ошибку несовместимости Object и Variant
Правильно дает. Ты используешь вместо сравнение — присваивание.
Сравнение — ==
Присваивание — =
...
Рейтинг: 0 / 0
18.07.2006, 16:02
    #33861379
ЧеГевара
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
Код: plaintext
1.
2.
object o = null;
if (Equals(o, null)) {}
...
Рейтинг: 0 / 0
18.07.2006, 16:03
    #33861387
ndStar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
S>дает ошибку несовместимости Object и Variant
Правильно дает. Ты используешь вместо сравнение — присваивание.
Сравнение — ==
Присваивание — =

Это не С, а Delphi
...
Рейтинг: 0 / 0
18.07.2006, 16:13
    #33861434
ЧеГевара
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
а мы не ф топике по asp.net?
...
Рейтинг: 0 / 0
18.07.2006, 16:15
    #33861443
Nikolay_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
S>Это не С, а Delphi
Интересно, а Delphi уже ASP.NET поддерживает? :???:
...
Рейтинг: 0 / 0
18.07.2006, 16:40
    #33861570
ndStar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
S>Это не С, а Delphi
Интересно, а Delphi уже ASP.NET поддерживает? :???:

2005
...
Рейтинг: 0 / 0
18.07.2006, 16:43
    #33861577
ndStar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
object o = null;
if (Equals(o, null)) {}


Не катит по той же причине. Похоже в С с этим проблем нет, т.к. там вообще с типами весьма вольно, а Delphi нужно явное приведение типов. Но у Object кроме ToString ничего не наблюдается, а он на null реагирует неадекватно.
...
Рейтинг: 0 / 0
18.07.2006, 16:56
    #33861646
Random_Goodman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
Давно поддерживает

Афттар, не используй Null дельфийский, используй null дотнетовский
...
Рейтинг: 0 / 0
18.07.2006, 17:03
    #33861670
Random_Goodman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
ndStar
Не катит по той же причине. Похоже в С с этим проблем нет, т.к. там вообще с типами весьма вольно, а Delphi нужно явное приведение типов. Но у Object кроме ToString ничего не наблюдается, а он на null реагирует неадекватно.
Можно сделать тупо
авторstring a= Convert.ToString(null);
if (a="")
{
...
}
...
Рейтинг: 0 / 0
18.07.2006, 17:59
    #33861868
C...R...a...S...H
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
procedure Program.Main(args: string[]);
begin
obj1 := nil;
if (TObject.Equals(obj1, nil)) then
Console.WriteLine('asd')
end;

----------------------------------------
Knowledge is P...O...w...E...R!
My site
...
Рейтинг: 0 / 0
19.07.2006, 09:44
    #33862837
ndStar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
Можноо сделать тупо
string a= Convert.ToString(null);


Суть же не в этом, суть в том, что ExecuteScalar в качестве выхода выдает null, и нужно это как-то перехватить ДО преобразования в ToString, иначе программа вылетает с ошибкой. Делаю так
var obj:System.Object; ss:string;
begin
obj:=SelCon1.ExecuteScalar;
if Equals(obj,null) ???
else ss:=obj.tostring;
Но вот сравнение то и не проходит.

Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request.
Exception Details: System.NullReferenceException: Object reference not set to an instance of an objec

Делала так:
var obj,objnull:System.Object;
begin
objnull:=null;
obj:=SelCon1.ExecuteScalar;
if Equals(obj,objnull)
Не проходит, т.к. objnull почему-то = DBNull

Прямо прихожу в отчаянье.
...
Рейтинг: 0 / 0
19.07.2006, 10:06
    #33862896
ndStar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
procedure Program.Main(args: string[]);
begin
obj1 := nil;
if (TObject.Equals(obj1, nil)) then
Console.WriteLine('asd')
end;




Спасибо огромное. Действительно, если вместо null использовать nil, то все получается!
...
Рейтинг: 0 / 0
19.07.2006, 10:07
    #33862901
Random_Goodman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
Аффтар, делай как я говорю, а не изобретай велосипед

Convert.ToString() и obj.ToString() вообще совершенно разные вещи. Второй метод. если только он не перекрыт, вообще не имеет отношения к преобразованию значения в String

и уж тем более null.ToString() у тебя не получится, потому что экземпляра класса нет!
...
Рейтинг: 0 / 0
19.07.2006, 12:16
    #33863401
Spaider
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
Здравствуйте, Nikolay_Ch, Вы писали:

S>>Это не С, а Delphi
N_C>Интересно, а Delphi уже ASP.NET поддерживает? :???:

Доброе утро :)... << RSDN@Home 1.2.0 alpha rev. 650>>
...
Рейтинг: 0 / 0
19.07.2006, 12:16
    #33863402
Spaider
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
System.Object и null
Здравствуйте, ndStar, Вы писали:

S>Помогите плиз! Как сравнить?

S>obj:System.Object;
S>...
S>if obj=null

Ну, дык, если Дельфи, то дельфяческое "пусто" и надо юзать:


Var
    obj    : System.Object; // или TObject, не важно
...
    if (obj=nil) // Как вариант if not Assigned(obj)
    Begin
        ...... << RSDN@Home 1.2.0 alpha rev. 650>>
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / System.Object и null / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]