powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вопрос про архтитектурную особенность ADO.NET
12 сообщений из 12, страница 1 из 1
Вопрос про архтитектурную особенность ADO.NET
    #35712010
Фотография Sweet_Alkazar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у объекта DataRow есть свойство RowState, оно ReadOnly
оно меняется при манипуляции с объектом, причём если у нас есть отсоединённый объект и мы добавим его к коллекции строк DataTable, то свойство значение изменит
Код: plaintext
1.
2.
DataRow row = myTable.NewRow();//тут RowState = Detached 
//...
myTable.Rows.Add( row );//теперь RowState = Added
т.е. по факту коллекция Rows меняет RowState
вопрос: как, если оно ReadOnly? через Reflection?
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712063
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это оно для Вас (разработчика) ReadOnly. ADO.NET меняет RowState при манипуляции со строками.

Кстати Вы в курсе, что есть специальный форум ADO.NET?
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712064
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Впредь рекомендую сюда .
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712086
на то оно и Property, чтобы вычисляться на основании приватных данных.
Readonly означает, что set для этого свойства отсутствует
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712162
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
row.SetAdded();
row.SetModified();
row.AcceptChanges();
Достаточно?
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712533
Фотография Sweet_Alkazar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Worobjoff
Код: plaintext
1.
2.
row.SetAdded();
row.SetModified();
row.AcceptChanges();
Достаточно?
Это фича ADO.NET 2.0, так что вопрос остаётся
bured ADO.NET меняет RowState при манипуляции со строками.
?
bured Кстати Вы в курсе, что есть специальный форум ADO.NET?
В курсе, просто предпочитаю C# форум, он поживее будет)
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712542
Фотография Sweet_Alkazar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
раненыйвголовуна то оно и Property, чтобы вычисляться на основании приватных данных.
Readonly означает, что set для этого свойства отсутствует
Хорошо, видимо приведённый код не совсем проясняет в чём суть вопроса.
Пусть у вас есть класс (SomeClass) с ридонли проперти(Prop).
Есть класс, который управляет коллекцией(SomeClassCollection).
По факту вам надо из коллекции выставлять Prop, в то время как оно ридонли.
Есть ли возможность так спроектировать классы, чтобы в этом случае обойтись без Reflection?
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712546
Фотография Ъй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sweet_Alkazarbured Кстати Вы в курсе, что есть специальный форум ADO.NET?
В курсе, просто предпочитаю C# форум, он поживее будет)
Просто модераторы могут взять и перенести ваш топик в соотв. форум. Хорошо, если еще в процессе не вломят. Недавно только обсуждалась реструктуризация дотнетовских форумов, где и этот вопрос затрагивался.
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35712550
gp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
public class MyRow
{
   public MyTable Parent { get; set; }
   public bool HasParent { get { return _parent != null; } } // read only свойство - не имеет метода set
}

public class MyTable
{
 public void AddRow(MyRow row)
 {
   ...
   row.Parent = this;
 }
}

...

var tbl = new MyTable();
var row = new MyRow();
bool rowHasParentBefore = row.HasParent;
tbl.AddRow(row);
bool rowHasParentAfter = row.HasParent;
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35714352
Фотография Sweet_Alkazar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gp
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
public class MyRow
{
   public MyTable Parent { get; set; }
   public bool HasParent { get { return _parent != null; } } // read only свойство - не имеет метода set
}

public class MyTable
{
 public void AddRow(MyRow row)
 {
   ...
   row.Parent = this;
 }
}

...

var tbl = new MyTable();
var row = new MyRow();
bool rowHasParentBefore = row.HasParent;
tbl.AddRow(row);
bool rowHasParentAfter = row.HasParent;

Да, это хорошо
Только в ADO.NET у DataRow свойство Table тож readonly))))))
Похоже альтернатив Reflection нету
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35714398
Gatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
слово internal Вам о чём-нибудь говорит?
...
Рейтинг: 0 / 0
Вопрос про архтитектурную особенность ADO.NET
    #35714899
Фотография Sweet_Alkazar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gatman, похоже оно) спасибо)

Модератор: Тема перенесена из форума "C#.NET".
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вопрос про архтитектурную особенность ADO.NET
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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