Two questions, and a small thing:
First – I have a DTO like this:
[AutoApply(Behavior.AuditCreate)] // this populates columns inherited by AuditBase (for Template class)
public class CreateProcView : ICreateDb<ProcViewDefinition>, IReturn<IdResponse>
{
[ValidateNotEmpty]
[ValidateMinimumLength(3)]
public string ViewName { get; set; }
[ValidateGreaterThan(0)]
public int Version { get; set; }
//[ValidateMinimumLength(1)]
public List<string> LocationHints { get; set; }
public bool SingleProc { get; set; }
//[ValidateMinimumLength(1)]
//[ValidateRegularExpression(".+/.+")]
public List<string> ProcessNames { get; set; }
[ValidateNotEmpty]
public enAccessLevel AccessLevel { get; set; }
[ValidateNotEmpty]
[ValidateMinimumLength(10)]
[Input(Type="textarea")] // for auto-UI
public string ViewDefinition { get; set; }
}
And in the API explorer, the fields that are of type List does not appear. It does however work to prefill all other fields, then switch to the JSON view, and add the JSON for the lists.
Is it supposed to be like this? I guess there’s no “list input”-type field, right? Any plan for one? Like a text-field w. add-botton, and a way to remove as well?
Second question:
The DTO shown above is of type AutoQuery, correct? Since it has ICreateDb<>
. Then why is it not showing up in Locode? What am I doing wrong?
Third thing
The links in the UI, e.g. from API explorer to Locode, seems to be relative to root, like this: /locode/MyDtoName
, but this crashes a bit when served under a path such as /api
, even if setup in AppHost using HandlerFactoryPath = "api"