Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Помогите разобраться с приведением типов / 5 сообщений из 5, страница 1 из 1
14.05.2014, 12:18
    #38640779
VIT2708
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с приведением типов
Есть класс

Код: c#
1.
2.
3.
4.
5.
6.
class Core
{
int id {get; set;}
string name {get; set;}
DateTime date {get; set;}
}



Код: c#
1.
2.
3.
4.
class Test : Core
{
List<Test> list {get; set;}
}



Заполнение Core
Код: c#
1.
2.
3.
4.
5.
6.
private Core GetCore()
{
Core c = new Core();
// успешно его заполняем
return c;
}



В программе button_click
....
Test t = GetCore() as Core; //класс Core он базовый для других класcов и что бы не плодить лишних функций GetTest, GetSuperTest
я создал функцию для базового класса и мне нужно из него заполнить поля в производном классе, а дальше в зависимости от необходимости я заполняю другие поля.

Я не хотел бы писать вот так

Код: c#
1.
2.
3.
4.
Core c = GetCore();
Test t = new Test();
t.id = c.id;
.....



Подскажите как, я запутался
...
Рейтинг: 0 / 0
14.05.2014, 12:45
    #38640828
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с приведением типов
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
class Core
{
int id {get; set;}
string name {get; set;}
DateTime date {get; set;}

public Core()
{
 id = ...;
 name = ...;
 date = ...;
}

public Core(int Id, string Name, DateTime Date)
{
 id = Id;
 name = Name;
 date = Date;
}

}

Test t = new Test(1, "myname", DateTime.Now);
...
Рейтинг: 0 / 0
14.05.2014, 12:51
    #38640834
VIT2708
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с приведением типов
Konst_One,

только через конструктор?
...
Рейтинг: 0 / 0
14.05.2014, 13:00
    #38640856
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с приведением типов
VIT2708,

Код: c#
1.
2.
3.
4.
5.
6.
private Core GetCore()
{
Core c = new Core();
// успешно его заполняем
return c;
}



что там внутри, может в дефолтный конструктор можно перенести, тогда можно просто:

Код: c#
1.
Test t = new Test();
...
Рейтинг: 0 / 0
14.05.2014, 13:11
    #38640879
VIT2708
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с приведением типов
Konst_One,

Спасибо, буду экспериментировать

PS: А как же "восходящее" приведение классов?
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Помогите разобраться с приведением типов / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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