private int _billAccount;
public string BillAccount { get
{
var account = _billAccount.ToString().PadLeft(9, '0');
return account.Substring(0, 3) + "-" + account.Substring(3, 3) + "-" + account.Substring(6, 3);
}
set
{
var account = new string(value.Where(char.IsDigit).ToArray());
_billAccount = Convert.ToInt32(account);
}
}
Свойство BillAccount в классе обрабатывает представление строки как (999-999-999). Столбец в таблице определен как
BillAccount INT NOT NULL
Я пытался использовать
.HasField("_billAccount")
.HasConversion(new NumberToStringConverter<int>())
и любую другую комбинацию, которую я могу придумать, но я просто не могу заставить ее работать.
System.InvalidOperationException: указанное поле '_billAccount' типа 'int' нельзя использовать для свойства 'Lead.BillAccount' типа 'string'. Можно использовать только вспомогательные поля типов, которые можно назначить из типа свойства
Как настроить это в EF Core 3, Fluent API, чтобы поле _billAccount
отображалось в столбец таблицы BillAccount
,хотя у них разные типы?