gpt4 book ai didi

c# - 软删除数据但在获取时出现问题 | EF 核心,C#

转载 作者:行者123 更新时间:2023-12-05 05:59:54 25 4
gpt4 key购买 nike

我有一个问题,我有 2 个表。如下所示。

public class Campaign
{
public int CampaignId { get; set; }
public string CampaignTitle { get; set; }
public string CampaignObjective { get; set; }
public int CurrencyId { get; set; }
public Currency Currency { get; set; }
public bool IsDeleted {get; set;}
}

public class Currency
{
public int CurrencyId { get; set; }
public string CurrencyTitle { get; set; }
public bool IsDeleted {get; set;}
}

我正在使用 GlobalQuery Filters 过滤掉软删除数据。

entityConfiguration.HasQueryFilter(x => x.IsDeleted == false); 

我正在使用下面的查询

return await _context.Campaigns.Include(x => x.Currency).FirstOrDefaultAsync();

上述查询的最佳方法是什么,以获取相关数据(已删除且也是必需的;在本例中为货币)

对于最终用户数据被删除,如果我获取并显示,它会让用户感到困惑,如果我不获取并传递 Campaign.CurrencyId=null 则模型级别错误(CurrencyId != null)

任何帮助将不胜感激,我已经搜索但找不到解决方案或更好的方法。

最佳答案

IgnoreQueryFilters 肯定有某种解决方案,例如:

return await _context.Campaigns.IgnoreQueryFilters().Include(x => x.Currency).FirstOrDefaultAsync();

关于c# - 软删除数据但在获取时出现问题 | EF 核心,C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67904889/

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