Здравствуйте, dsalodki, Вы писали:
[Skip]
D>D>$"update settings set value={Safe(val)} where name='{name}';if @@ROWCOUNT=0 insert into settings (name,value) values ({Safe(name)},{Safe(val)})"
D>
Ты хочешь UPSERT, его в EF Core нету
Тока так
using(var context = new CoinDogsContext(AppSettingsReader.GetConnectionString()))
using(var tran = context.Database.BeginTransaction(IsolationLevel.Serializable))
{
var settings = context.Settings.FirstOrDefault(x => x.Name == name);
if (settings == null)
{
settings = new Setting { Name = name };
context.Settings.Add(settings);
}
settings.Value = val;
context.SaveChanges();
tran.Commit();
}