Skip to content

Instantly share code, notes, and snippets.

@Taifunov
Created August 26, 2019 15:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Taifunov/50b7ffa61450b3c1af3ae1b8e440f2f0 to your computer and use it in GitHub Desktop.
Save Taifunov/50b7ffa61450b3c1af3ae1b8e440f2f0 to your computer and use it in GitHub Desktop.
public static PostData UpdatePostData(SQLiteConnection conn, int messageId, bool isLiked)
{
PostData postData;
if (isLiked)
{
conn.Open();
var likesCount = conn.ExecuteReader("SELECT (Likes) FROM PostData AS pd WHERE pd.MessageId = @MessageId", new { messageId }).Parse<int>().FirstOrDefault();
conn.Close();
var temp = 1;
if (likesCount > 0)
{
temp = likesCount++;
}
try
{
conn.Open();
//Тут dbislocked
conn.Execute("UPDATE PostData SET Likes = @Likes WHERE MessageId = @MessageId", new { Likes = temp, messageId });
}
catch (Exception ex)
{
Console.WriteLine(ex);
throw;
}
}
else
{
var disLikesCount = conn.ExecuteReader("SELECT (DisLikes) FROM PostData AS pd WHERE pd.MessageId = @MessageId", new { messageId }).Parse<int>().FirstOrDefault();
var temp = 1;
if (disLikesCount > 0)
{
temp = disLikesCount++;
}
//conn.Execute("UPDATE PostData SET DisLikes = @DisLikes WHERE MessageId = @MessageId", new { DisLikes = temp, messageId });
using (SQLiteCommand cmd = new SQLiteCommand($"UPDATE PostData SET DisLikes = '{temp}' WHERE MessageId = '{messageId}'", conn))
{
cmd.ExecuteNonQuery();
}
}
postData = conn.ExecuteReader("SELECT * FROM PostData AS pd WHERE pd.MessageId = @MessageId", new { messageId }).Parse<PostData>().FirstOrDefault();
return postData;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment