Свойства вашей модели не обязательно должны быть «авто свойствами». Хотя это проще. Атрибут DefaultValue - это действительно только информативные метаданные. Ответ, принятый здесь , является одной из альтернатив конструкторскому подходу.
public class Track
{
private const int DEFAULT_LENGTH = 400;
private int _length = DEFAULT_LENGTH;
[DefaultValue(DEFAULT_LENGTH)]
public int LengthInMeters {
get { return _length; }
set { _length = value; }
}
}
vs.
public class Track
{
public Track()
{
LengthInMeters = 400;
}
public int LengthInMeters { get; set; }
}
Это будет работать только для приложений, создающих и потребляющих данные с использованием этого конкретного класса. Обычно это не проблема, если код доступа к данным централизован. Чтобы обновить значение в всех приложениях, вам необходимо настроить источник данных для установки значения по умолчанию. Ответ Devi показывает, как это можно сделать с помощью миграции, sql или любого другого языка, на котором говорит ваш источник данных.
добавьте private popoverController: popoverController
в конструктор всплывающих окон
, затем напишите функцию, подобную этой, и вызывайте ее, когда вы хотите закрыть модал
async DismissClick() {
await this.popoverController.dismiss();
}