У меня есть простая модель со свойством Agg2Id_Agg2Reference, имеющим только общедоступный получатель, но оно все еще отображается в операции Post в схеме в пользовательском интерфейсе Swagger через последнюю версию Swashbuckle.
Ниже приведен класс модели ...
public class UpdateRequest
{
private string _firstProperty;
private string _agg2_ServiceEndPoint;
private AEA.GarthApp.Service2.Agg2.ViewModels.Agg2 _agg2Id_Agg2Reference;
private AEA.GarthApp.Service2.Agg2.ViewModels.Agg2Id _agg2Id;
private AEA.GarthApp.Service1.Agg1.ViewModels.Agg1Id _agg1Id;
public void SetAgg2ServiceEndPoint(string value)
{
_agg2_ServiceEndPoint = value;
}
public void SetAgg2IdAgg2Reference(AEA.GarthApp.Service2.Agg2.ViewModels.Agg2 value)
{
_agg2Id_Agg2Reference = value;
}
[ProtoMember(1)]
public string FirstProperty
{
get => _firstProperty;
set => _firstProperty = value;
}
[ProtoMember(2)]
public string Agg2_ServiceEndPoint
{
get => _agg2_ServiceEndPoint;
}
[ProtoMember(3)]
public AEA.GarthApp.Service2.Agg2.ViewModels.Agg2 Agg2Id_Agg2Reference
{
get => _agg2Id_Agg2Reference;
}
[ProtoMember(4)]
public AEA.GarthApp.Service2.Agg2.ViewModels.Agg2Id Agg2Id
{
get => _agg2Id;
set => _agg2Id = value;
}
[ProtoMember(5)]
public AEA.GarthApp.Service1.Agg1.ViewModels.Agg1Id Agg1Id
{
get => _agg1Id;
set => _agg1Id = value;
}
}
В пользовательском интерфейсе Swagger показано следующее ...
ПРИМЕЧАНИЕ 1. Я пытался украсить свойство Agg2Id_Agg2Reference атрибутом [ReadOnly (true)] и без него, но все же вижу, что это свойство отображается в пользовательском интерфейсе Swagger.
ПРИМЕЧАНИЕ 2. Свойство типа строки Agg2_ServiceEndPoint также является только получателем, но не отображается в схеме пользовательского интерфейса (как и ожидалось).
ПРИМЕЧАНИЕ 3. Я не хочу декорировать с помощью JsonIgnore, поскольку на самом деле хочу, чтобы эти данные оставались на клиенте, я просто не хочу отображать их как настраиваемое свойство в схеме пользовательского интерфейса Swagger.
Как я могу удалить свойство Agg2Id_Agg2Reference из схемы Swagger / OpenAPI и не отображаться в пользовательском интерфейсе Swagger?