C# 如果属性还具有其他属性,则忽略NotMapped属性
我的实体类有一个类型为C# 如果属性还具有其他属性,则忽略NotMapped属性,c#,entity-framework-6,devexpress,C#,Entity Framework 6,Devexpress,我的实体类有一个类型为DateTime的属性,具有[NotMapped]和[DateRange]属性[DateRange]属性来自DevExpress 当我尝试创建新迁移时,将忽略[NotMapped]属性,entity framework希望为此属性创建一个新列 如果删除了第二个属性[DateRange],则[NotMapped]正在工作 我试过EF 6.2和6.3,但结果相同 不工作: public class Foo { [Required] public DateTime
DateTime
的属性,具有[NotMapped]
和[DateRange]
属性<代码>[DateRange]属性来自DevExpress
当我尝试创建新迁移时,将忽略[NotMapped]
属性,entity framework希望为此属性创建一个新列
如果删除了第二个属性[DateRange]
,则[NotMapped]
正在工作
我试过EF 6.2和6.3,但结果相同
不工作:
public class Foo
{
[Required]
public DateTime DT1Utc { get; set; }
[NotMapped]
public DateTime LocalDT1
{
get => TimeZoneInfo.ConvertTimeFromUtc(DT1Utc, TimeZoneInfo.Local);
set => DT1Utc = TimeZoneInfo.ConvertTimeToUtc(value);
}
[Required]
public DateTime DT2Utc { get; set; }
[NotMapped]
[DateRange(StartDateEditFieldName = "LocalDT1", MinDayCount = 1)]
public DateTime LocalDT2
{
get => TimeZoneInfo.ConvertTimeFromUtc(DT2Utc, TimeZoneInfo.Local);
set => DT2Utc = TimeZoneInfo.ConvertTimeToUtc(value);
}
}
工作:
public class Foo
{
[Required]
public DateTime DT1Utc { get; set; }
[NotMapped]
public DateTime LocalDT1
{
get => TimeZoneInfo.ConvertTimeFromUtc(DT1Utc, TimeZoneInfo.Local);
set => DT1Utc = TimeZoneInfo.ConvertTimeToUtc(value);
}
[Required]
public DateTime DT2Utc { get; set; }
[NotMapped]
public DateTime LocalDT2
{
get => TimeZoneInfo.ConvertTimeFromUtc(DT2Utc, TimeZoneInfo.Local);
set => DT2Utc = TimeZoneInfo.ConvertTimeToUtc(value);
}
}
在这两种情况下使用的指令是否相同?您可能有一个不明确的NotMapping。在这两种情况下使用directived是相同的。您使用的是哪个.net版本?我使用的是.net 4.7.2