gpt4 book ai didi

c# - 将 [NotMapped] 添加到部分类是否避免映射整个类?

转载 作者:行者123 更新时间:2023-11-30 14:25:13 25 4
gpt4 key购买 nike

我已经设置了我的 EF 代码优先数据库,但想要添加其他派生属性。 (是的,它应该在 View 模型中,我们可以下次再讨论为什么会这样。)我创建了一个扩展实际表类的部分类。如果我将 [NotMapped] 添加到新的部分,它会避免映射我在那里添加的附加属性还是会应用于整个类?

最佳答案

它将适用于整个类(class)。请记住,分部类只是将类拆分为多个文件的一种方式。来自official docs :

At compile time, attributes of partial-type definitions are merged.

所以这样:

[SomeAttribute]
partial class PartialEntity
{
public string Title { get; set; }
}

[AnotherAttribute]
partial class PartialEntity
{
public string Name { get; set; }
}

相当于写:

[SomeAttribute]
[AnotherAttribute]
partial class PartialEntity
{
public string Title { get; set; }
public string Name { get; set; }
}

如果你想添加一个分部类而不需要模型中包含的属性,你需要将 NotMapped 属性添加到各个项目:

partial class PartialEntity
{
public string Title { get; set; }
}

partial class PartialEntity
{
[NotMapped]
public string Name { get; set; }
}

关于c# - 将 [NotMapped] 添加到部分类是否避免映射整个类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39146787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com