Acme.Northwind.Install.nHydrateDbObject.Load C# (CSharp) Метод

Load() публичный статический Метод

public static Load ( string connectionString, string modelKey, System transaction ) : List
connectionString string
modelKey string
transaction System
Результат List
		public static List<nHydrateDbObject> Load(string connectionString, string modelKey, System.Data.SqlClient.SqlTransaction transaction)
		{
			var retval = new List<nHydrateDbObject>();
			System.Data.SqlClient.SqlConnection conn = null;
			if (transaction == null)
			{
				conn = new System.Data.SqlClient.SqlConnection(connectionString);
				conn.Open();
			}
			else
			{
				conn = transaction.Connection;
			}

			try
			{
				var command2 = new SqlCommand("select * from sys.tables where name = '__nhydrateobjects'", conn);
				command2.Transaction = transaction;
				var da = new SqlDataAdapter(command2);
				var ds = new DataSet();
				da.Fill(ds);
				if (ds.Tables[0].Rows.Count > 0)
				{
					var command = new SqlCommand("SELECT * FROM __nhydrateobjects where [ModelKey] = '" + modelKey + "'", conn);
					command.Transaction = transaction;
					da = new SqlDataAdapter(command);
					ds = new DataSet();
					da.Fill(ds);
					var t = ds.Tables[0];
					foreach (DataRow row in t.Rows)
					{
						var newItem = new nHydrateDbObject();
						newItem.rowid = (long)row["rowid"];
						if (row["id"] != System.DBNull.Value)
							newItem.id = (Guid)row["id"];
						newItem.name = (string)row["name"];
						newItem.ModelKey = (Guid)row["ModelKey"];
						newItem.type = (string)row["type"];
						if (row["schema"] != System.DBNull.Value)
							newItem.schema = (string)row["schema"];
						newItem.CreatedDate = (DateTime)row["CreatedDate"];
						newItem.ModifiedDate = (DateTime)row["ModifiedDate"];
						if (row["Hash"] != System.DBNull.Value)
							newItem.Hash = (string)row["Hash"];
						retval.Add(newItem);
					}
				}
			}
			catch (Exception ex)
			{
				throw;
			}
			finally
			{
				if (transaction == null && conn != null)
					conn.Close();
			}
			return retval;
		}