如何忽略类中的属性

本文关键字:属性 何忽略 | 更新日期: 2023-09-27 18:12:20

我一直在测试ServiceStack自动查询,到目前为止我真的很喜欢。然而,我遇到了一个问题。我所有的服务请求dto都有两个来自名为ILoggedRequest的接口的属性,它们用于使用IRequestLogger的实现将有关每个请求的信息记录到数据库中。

#region ILoggedRequest
public string Identifier
{
    get { return Id.ToString(); }
}
public string RequestClass
{
    get { return GetType().Name; }
}
#endregion

当包含这些属性时,由于它们包含值,自动查询尝试搜索它们,并且我从请求中得不到任何结果。是否有一种方法来修饰属性,使自动查询忽略它们?比如:

[QueryIgnore]
public string Identifier
{
    get { return Id.ToString(); }
}

如何忽略类中的属性

感谢mythz的快速回复。你的回复引起了怀疑,我通过在单元测试中将sqlite切换到文件来双重检查我的数据库模式。果然,我的"Identifier"列在模式中,因此不是未知的。很抱歉浪费了你的时间!

对于遇到这个问题的其他人,我的"标识符"列没有使用[Ignore}属性标记。我假设,总是一个错误,当使用DropAndCreateTable时,只有getter的属性不会被推到db模式。