From cabbdc847af6d20457c2844d1869b1dae004c052 Mon Sep 17 00:00:00 2001
From: MattMo <matt@montoyatech.com>
Date: Fri, 23 Jun 2023 10:10:17 -0700
Subject: [PATCH] Added function to MySqlSession to check if a row exists.
 Bumped package version to 1.1.4

---
 MySqlPlus/MySqlPlus.csproj |  2 +-
 MySqlPlus/MySqlSession.cs  | 36 ++++++++++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+), 1 deletion(-)

diff --git a/MySqlPlus/MySqlPlus.csproj b/MySqlPlus/MySqlPlus.csproj
index d37ab84..2e43ed4 100644
--- a/MySqlPlus/MySqlPlus.csproj
+++ b/MySqlPlus/MySqlPlus.csproj
@@ -7,7 +7,7 @@
     <AssemblyName>MontoyaTech.MySqlPlus</AssemblyName>
     <RootNamespace>MontoyaTech.MySqlPlus</RootNamespace>
     <Title>MontoyaTech.MySqlPlus</Title>
-    <Version>1.1.3</Version>
+    <Version>1.1.4</Version>
     <Company>MontoyaTech</Company>
     <Description>A simple C# library to help work with MySql.</Description>
     <Copyright>MontoyaTech 2023</Copyright>
diff --git a/MySqlPlus/MySqlSession.cs b/MySqlPlus/MySqlSession.cs
index 8df9e57..500422c 100644
--- a/MySqlPlus/MySqlSession.cs
+++ b/MySqlPlus/MySqlSession.cs
@@ -145,6 +145,42 @@ namespace MontoyaTech.MySqlPlus
             }
         }
 
+        /// <summary>
+        /// Returns whether or not a row of a given type exists by id in the db.
+        /// </summary>
+        /// <typeparam name="T"></typeparam>
+        /// <param name="id"></param>
+        /// <returns></returns>
+        public bool Exists<T>(ulong id)
+        {
+            using (var command = new MySqlCommand())
+            {
+                command.Exists<T>(id);
+
+                using (var reader = this.Connection.ExecuteReader(command))
+                    return reader.GetBoolean(0);
+
+            }
+        }
+
+        /// <summary>
+        /// Returns whether or not a row of a given type exists by id in the db.
+        /// </summary>
+        /// <typeparam name="T"></typeparam>
+        /// <param name="id"></param>
+        /// <returns></returns>
+        public bool Exists<T>(string id)
+        {
+            using (var command = new MySqlCommand())
+            {
+                command.Exists<T>(id);
+
+                using (var reader = this.Connection.ExecuteReader(command))
+                    return reader.GetBoolean(0);
+
+            }
+        }
+
         /// <summary>
         /// Deletes a row in the db.
         /// </summary>