Fix user option values on .NET 5+

This commit is contained in:
2021-12-25 23:52:09 +04:00
parent 4807296992
commit 5f93d60277
6 changed files with 145 additions and 25 deletions
+9 -2
View File
@@ -30,8 +30,14 @@ namespace Kruzya.TelegramBot.Core.Extensions
/// </summary>
/// <param name="dbContext"></param>
/// <param name="entity">Entity for marking as modified.</param>
public static void MarkAsModified(this DbContext dbContext, object entity) =>
dbContext.Entry(entity).State = EntityState.Modified;
public static void MarkAsModified(this DbContext dbContext, object entity)
{
var entry = dbContext.Entry(entity);
if (entry.State == EntityState.Added)
return;
entry.State = EntityState.Modified;
}
#endregion
@@ -97,6 +103,7 @@ namespace Kruzya.TelegramBot.Core.Extensions
if (opt == null)
{
opt = repository.Create();
opt.Name = option;
opt.BotUser = await repository.GetService<CoreContext>().Users.FindOrCreate(chatId, userId);
}