LINQ, объект, который реализует Интерфейс и исключение в отображении

Старое содержимое этого ответа теперь устарело . См. Другие ответы на основе MutationObserver.

9
задан Flexo 25 November 2015 в 12:53
поделиться

3 ответа

Попробуйте это:

using System.Data.Linq.Mapping;

public partial class MyEntity: IEntity 
 {    [Column(Storage="IDfield", DbType="int not null", IsPrimaryKey=true)]
      public int ID 
       {         
          get { return this.IDfield; }        
          set { this.IDfield=value;  }    
       } 
 }
0
ответ дан 4 December 2019 в 21:13
поделиться

Для перевода вашего запроса LINQ на фактический SQL Linq2SQL осматривает выражение, которое вы его даете. Проблема в том, что вы не поставляли достаточно информации для L2, чтобы иметь возможность переводить свойство «ID» на фактическое имя столбца БД. Вы можете добиться того, что вы хотите, убедившись, что L2S может отображать «ID» на «Idfield».

Это должно быть возможно, используя подход, предусмотренный в ответах.

Если вы используете дизайнер, вы также можете просто переименовать свойство класса «Idfield» на «ID», с добавленной выгодой, которые вам не придется явно реализовать свойство «ID» в вашем частичном классе, то есть Частичное определение класса для минимальности просто становится:

public partial class MyEntity: IEntity 
{    
}
0
ответ дан 4 December 2019 в 21:13
поделиться
-

Это работает для меня -

public partial class MyEntity: IEntity 
 {    [Column(Name = "IDfield", Storage = "_IDfield", IsDbGenerated = true)]
      public int ID 
       {         
          get { return this.IDfield; }        
          set { this.IDfield=value;  }    
       } 
 }
3
ответ дан 4 December 2019 в 21:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: