I have issue with generated DTO which I think is because I have nested a QueryDb class as a property.
Error is
Class ‘QueryDb’ used before its declaration
I have this QueryDb class on backend:
public class FindGodaddyExpiring : QueryDb<GodaddyExpiringSearchView, GodaddyExpiringSearchViewResponse>
{
}
I give the user the option to save a search to the database and re-run it later so I have this ormlite class table.
[CompositeIndex(nameof(MyUserAuthId), nameof(AlertName))]
public class DomainAlert : IReturn<DomainAlert>
{
[AutoIncrement]
public int Id { get; set; }
[ForeignKey(typeof(MyUserAuth), OnDelete = "CASCADE")]
public int MyUserAuthId { get; set; }
public string AlertName { get; set; }
public DateTime Created { get; set; } = DateTime.Now;
[Required]
public GridRequestState GridRequestState { get; set; }
[Required]
public DomainAlertSource Source { get; set; }
}
It was working OK until I refactored code to include GridRequestState
that has my QueryDb class embedded in it.
public class GridRequestState
{
[Required]
public Dictionary<string, string> QueryParameters { get; set; }
[Required]
public FindGodaddyExpiring Request { get; set; }
public AgGridSortModel[] SortModel { get; set; }
public AgGridFilterModel[] FilterModel { get; set; }
}
The reason I want to save the request is so I can re-run the autoquery outside of my service in various cron tasks.
I guess the DTO generator isn’t expecting a nested QueryDb property which effects the ordering.
If I manually move QueryDb
and QueryBase
higher up in the code the error goes away.
Did I do something wrong? What should I do so DTO generates without error?