Исключить поле
От: maksimus Украина  
Дата: 04.05.11 14:01
Оценка:
Доброго времени суток!
Подскажите пожалуйста каким образом можно исключить свойство класса из маппинга select'ов, insert'ов, update'ов и пр. при использовании Linq?
Пробовал так:
[NonUpdatable(IsIdentity = false, OnInsert = true, OnUpdate = true)]
[SqlIgnore]
public string TypeName { get; set; }

но происходит "сдвиг" значений при маппинге например после select'а:
[TableName("Table")]
public class MyClass
{
    public string Fld1 { get; set; }
    [NonUpdatable(IsIdentity = false, OnInsert = true, OnUpdate = true)]
    [SqlIgnore]
    public string Fld2 { get; set; }
    public string Fld3 { get; set; }
    public string Fld4 { get; set; }
}

то есть значение полученные из БД распределяются следующим образом:
Fld2: <- Fld3_val
Fld3: <- Fld4_val
Re: Исключить поле
От: IT Россия linq2db.com
Дата: 04.05.11 14:12
Оценка:
Здравствуйте, maksimus, Вы писали:

А [MapIgnore] не подходит?
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Исключить поле
От: maksimus Украина  
Дата: 04.05.11 14:23
Оценка:
Здравствуйте, IT, Вы писали:
IT>А [MapIgnore] не подходит?
Подходит, спасибо
Re[2]: Исключить поле
От: Andy77 Ниоткуда  
Дата: 05.05.11 00:40
Оценка:
Здравствуйте, IT, Вы писали:

IT>Здравствуйте, maksimus, Вы писали:


IT>А [MapIgnore] не подходит?


Кстати, интересно, а можно это делать динамически?
Re[3]: Исключить поле
От: IT Россия linq2db.com
Дата: 05.05.11 13:12
Оценка:
Здравствуйте, Andy77, Вы писали:

IT>>А [MapIgnore] не подходит?

A>Кстати, интересно, а можно это делать динамически?

При желании можно. Можно создать новую MappingSchema, создать для неё XmlExtension и в нём указать этот атрибут для этого поля.
Если нам не помогут, то мы тоже никого не пощадим.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.