// update all object members on a row in table based on primary key // links: // docLink: http://sql2x.org/documentationLink/ce75e72e-fb16-4f4e-a2e6-dbd079dfa206 public void Update(CrudeDefaultUserActivityContract contract) { var data = new CrudeDefaultUserActivityData(); ContractToData(contract, data); data.Update(); }
// transfer model to data and update, on a transaction // links: // docLink: http://sql2x.org/documentationLink/aa07e05b-edc8-4e09-bf93-bf2a40c93c09 public void Update(CrudeDefaultUserActivityModel model, SqlConnection connection, SqlTransaction transaction) { var data = new CrudeDefaultUserActivityData(); ModelToData(model, data); data.Update(connection, transaction); }
// transfer model to data and insert // links: // docLink: http://sql2x.org/documentationLink/17cd8423-3c78-459f-a45b-773fcfbc3b7d public void Insert(CrudeDefaultUserActivityModel model) { var data = new CrudeDefaultUserActivityData(); ModelToData(model, data); data.Insert(); }
// transfer model to data and update // links: // docLink: http://sql2x.org/documentationLink/658fda50-2ad3-414e-9299-2b399d17a057 public void Update(CrudeDefaultUserActivityModel model) { var data = new CrudeDefaultUserActivityData(); ModelToData(model, data); data.Update(); }
// update all object members on a row in table based on primary key, on a transaction // the transaction and or connection state is not changed in any way other than what SqlClient does to it. // it is the callers responsibility to commit or rollback the transaction // links: // docLink: http://sql2x.org/documentationLink/b798ad6b-f4b8-466a-9086-6588a814fcf3 public void Update(CrudeDefaultUserActivityContract contract, SqlConnection connection, SqlTransaction transaction) { var data = new CrudeDefaultUserActivityData(); ContractToData(contract, data); data.Update(connection, transaction); }
// copy all rows from a List of SOAP Contracts to a List of serialized data objects // links: // docLink: http://sql2x.org/documentationLink/1c6c6b9c-e201-4590-8c69-d38a0ad2a9f7 public static void ContractListToDataList(List <CrudeDefaultUserActivityContract> contractList, List <CrudeDefaultUserActivityData> dataList) { foreach (CrudeDefaultUserActivityContract contract in contractList) { var data = new CrudeDefaultUserActivityData(); CrudeDefaultUserActivityService.ContractToData(contract, data); dataList.Add(data); } }
// transfer model list to data list // links: // crud definition: https://en.wikipedia.org/wiki/Create,_read,_update_and_delete // docLink: http://sql2x.org/documentationLink/1d6a48d9-fe39-4397-b8fa-a332da164cbf // parameters: // CrudeDefaultUserActivityData: key of table CrudeDefaultUserActivityData public static void ModelListToDataList(List <CrudeDefaultUserActivityModel> modelList, List <CrudeDefaultUserActivityData> dataList) { foreach (CrudeDefaultUserActivityModel model in modelList) { var data = new CrudeDefaultUserActivityData(); ModelToData(model, data); dataList.Add(data); } }
// fetch by Primary key into current object // links: // crud definition: https://en.wikipedia.org/wiki/Create,_read,_update_and_delete // docLink: http://sql2x.org/documentationLink/fdcc33b4-08f1-43c3-ae28-95fbf029c3bd // parameters: // CrudeDefaultUserActivityData: primary key of table CrudeDefaultUserActivityData public CrudeDefaultUserActivityModel FetchByDefaultUserActivityId(System.Guid defaultUserActivityId) { var dataAccessLayer = new CrudeDefaultUserActivityData(); var model = new CrudeDefaultUserActivityModel(); dataAccessLayer.FetchByDefaultUserActivityId(defaultUserActivityId); DataToModel(dataAccessLayer, model); return(model); }
// transfer data object to model object // links: // docLink: http://sql2x.org/documentationLink/43d57600-5ff5-4ef8-9330-123773d100d3 public static void DataToModel(CrudeDefaultUserActivityData data, CrudeDefaultUserActivityModel model) { model.DefaultUserActivityId = data.DefaultUserActivityId; model.DefaultUserActivityTypeRcd = data.DefaultUserActivityTypeRcd; model.UserActivityNote = data.UserActivityNote; model.OriginatingAddress = data.OriginatingAddress; model.Referrer = data.Referrer; model.DefaultUserId = data.DefaultUserId; model.DateTime = data.DateTime; }
// transfer model object to data object // links: // docLink: http://sql2x.org/documentationLink/95875d99-b7f7-4a9e-baa4-3fbe9925d8a2 public static void ModelToData(CrudeDefaultUserActivityModel model, CrudeDefaultUserActivityData data) { data.DefaultUserActivityId = model.DefaultUserActivityId; data.DefaultUserActivityTypeRcd = model.DefaultUserActivityTypeRcd; data.UserActivityNote = model.UserActivityNote; data.OriginatingAddress = model.OriginatingAddress; data.Referrer = model.Referrer; data.DefaultUserId = model.DefaultUserId; data.DateTime = model.DateTime; }
// copy all columns from a SOAP Contract to a serialized data object // links: // docLink: http://sql2x.org/documentationLink/10700d38-2227-4021-be12-2f4f206f5dd9 public static void ContractToData(CrudeDefaultUserActivityContract contract, CrudeDefaultUserActivityData data) { data.DefaultUserActivityId = contract.DefaultUserActivityId; data.DefaultUserActivityTypeRcd = contract.DefaultUserActivityTypeRcd; data.UserActivityNote = contract.UserActivityNote; data.OriginatingAddress = contract.OriginatingAddress; data.Referrer = contract.Referrer; data.DefaultUserId = contract.DefaultUserId; data.DateTime = contract.DateTime; }
// copy all columns from a serialized data object to a SOAP Contract // links: // docLink: http://sql2x.org/documentationLink/7553d6dd-da65-4a72-84c8-81f2f99ef4f5 public static void DataToContract(CrudeDefaultUserActivityData data, CrudeDefaultUserActivityContract contract) { contract.DefaultUserActivityId = data.DefaultUserActivityId; contract.DefaultUserActivityTypeRcd = data.DefaultUserActivityTypeRcd; contract.UserActivityNote = data.UserActivityNote; contract.OriginatingAddress = data.OriginatingAddress; contract.Referrer = data.Referrer; contract.DefaultUserId = data.DefaultUserId; contract.DateTime = data.DateTime; }
// fetch by Primary key into current object // links: // crud definition: https://en.wikipedia.org/wiki/Create,_read,_update_and_delete // docLink: http://sql2x.org/documentationLink/bbab4791-c9e7-49bf-90d5-fca19b1fedaa // parameters: // defaultUserActivityId: primary key of table default_user_activity public CrudeDefaultUserActivityContract FetchByDefaultUserActivityId(System.Guid defaultUserActivityId) { var dataAccessLayer = new CrudeDefaultUserActivityData(); var contract = new CrudeDefaultUserActivityContract(); dataAccessLayer.FetchByDefaultUserActivityId(defaultUserActivityId); DataToContract(dataAccessLayer, contract); return(contract); }
// fetch all from table into new List of class instances, only populating specific columns, // with a limit on number of returned rows and order by columns starting at a specific row // links: // docLink: http://sql2x.org/documentationLink/12d2812e-e963-4f26-8014-48c4e9cfb3ae public static List <CrudeDefaultUserActivityData> FetchAllWithLimitAndOffset(int limit, int offset) { var dataList = new List <CrudeDefaultUserActivityData>(); // create query against default_user_activity // this will be ansi sql and parameterized // parameterized queries are a good way of preventing sql injection // and to make sure the query plan is pre-compiled // links: // docLink: http://sql2x.org/documentationLink/21eca289-4747-4a75-b0a2-1a58457be608 string sql = @" select default_user_activity_id, default_user_activity_type_rcd, user_activity_note, originating_address, referrer, default_user_id, date_time from [default_user_activity]"; // open standard connection // the connection is found in web.config // the connection is closed upon completion of the reader // links: // docLink: http://sql2x.org/documentationLink/c3e624a4-8479-4c17-bec7-ec09f3abbe64 using (var conn = new SqlConnection(Conn.ConnectionString)) { conn.Open(); using (var command = new SqlCommand(sql, conn)) { // execute query against default_user_activity // if the query fails in the preprocessor of sql server // an exception will be raised // links: // docLink: http://sql2x.org/documentationLink/6507b543-adbc-4863-810b-8db439f40d5c IDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult); int count = 0; // read all rows returned from the query of default_user_activity // read all columns from the datareader and // populate the List of C# objects with them // links: // docLink: http://sql2x.org/documentationLink/fcd15e2f-df3f-44d8-8a13-d2e93d97f685 while (reader.Read()) { if ((count >= offset) && (count <= offset + limit)) { var data = new CrudeDefaultUserActivityData(); data.Populate(reader); dataList.Add(data); } count++; if (count > limit + offset) { break; } } } return(dataList); } }
// fetch by Foreign key into new List of class instances // links: // docLink: http://sql2x.org/documentationLink/13095cd7-f136-4532-8969-c50c62cc05ef public static List <CrudeDefaultUserActivityData> FetchByDefaultUserActivityTypeRcd(string defaultUserActivityTypeRcd) { var dataList = new List <CrudeDefaultUserActivityData>(); // create query against default_user_activity // this will be ansi sql and parameterized // parameterized queries are a good way of preventing sql injection // and to make sure the query plan is pre-compiled // links: // docLink: http://sql2x.org/documentationLink/86c78f05-a65f-4dfe-b048-d0cbece49f4e string sql = @" select default_user_activity_id, default_user_activity_type_rcd, user_activity_note, originating_address, referrer, default_user_id, date_time from [default_user_activity] where default_user_activity_type_rcd = @default_user_activity_type_rcd "; // open standard connection // the connection is found in web.config // the connection is closed upon completion of the reader // links: // docLink: http://sql2x.org/documentationLink/6fd25822-459f-4796-803a-071a3a270aa0 using (var conn = new SqlConnection(Conn.ConnectionString)) { conn.Open(); using (var command = new SqlCommand(sql, conn)) { // add foreign key column // this foreign key column will be used together with the prepared ansi sql statement // links: // docLink: http://sql2x.org/documentationLink/8aec2e5c-4732-4662-badb-83b89d1c34a9 command.Parameters.Add("@default_user_activity_type_rcd", SqlDbType.NVarChar).Value = defaultUserActivityTypeRcd.Replace("'", "''"); // execute query against default_user_activity // if the query fails in the preprocessor of sql server // an exception will be raised // links: // docLink: http://sql2x.org/documentationLink/bb9abe5c-d2c1-455a-b597-a2af0a35de5a IDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult); // read all rows returned from the query of default_user_activity // read all columns from the datareader and // populate the List of C# objects with them // links: // docLink: http://sql2x.org/documentationLink/5c413c03-5ddc-472a-a63d-53aecc7a2573 while (reader.Read()) { var data = new CrudeDefaultUserActivityData(); data.Populate(reader); dataList.Add(data); } } return(dataList); } }
// copy all rows from a List of serialized data objects in CrudeDefaultUserActivityData to a List of SOAP Contracts // links: // docLink: http://sql2x.org/documentationLink/3d3e60c3-69e4-43d6-8bd5-14a67a6ecf58 public List <CrudeDefaultUserActivityModel> FetchAll() { var list = new List <CrudeDefaultUserActivityModel>(); List <CrudeDefaultUserActivityData> dataList = CrudeDefaultUserActivityData.FetchAll(); foreach (CrudeDefaultUserActivityData crudeDefaultUserActivityBusiness in dataList) { var model = new CrudeDefaultUserActivityModel(); DataToModel(crudeDefaultUserActivityBusiness, model); list.Add(model); } return(list); }
// fetch all rows from table with an offset, and limit of rows // links: // docLink: http://sql2x.org/documentationLink/a87e5c54-b47e-4031-bc3b-837b4cf9f692 public List <CrudeDefaultUserActivityModel> FetchAllWithLimitAndOffset(string limit, string offset) { var list = new List <CrudeDefaultUserActivityModel>(); List <CrudeDefaultUserActivityData> dataList = CrudeDefaultUserActivityData.FetchAllWithLimitAndOffset(int.Parse(limit), int.Parse(offset)); foreach (CrudeDefaultUserActivityData crudeDefaultUserActivityBusiness in dataList) { var model = new CrudeDefaultUserActivityModel(); DataToModel(crudeDefaultUserActivityBusiness, model); list.Add(model); } return(list); }
// fetch all from table into new List of class instances, filtered by any column // links: // docLink: http://sql2x.org/documentationLink/db27658d-4d23-46d7-9970-7bbaef8634b0 public List <CrudeDefaultUserActivityModel> FetchWithFilter(System.Guid defaultUserActivityId, string defaultUserActivityTypeRcd, string userActivityNote, string originatingAddress, string referrer, System.Guid defaultUserId, System.DateTime dateTime) { var list = new List <CrudeDefaultUserActivityModel>(); List <CrudeDefaultUserActivityData> dataList = CrudeDefaultUserActivityData.FetchWithFilter(defaultUserActivityId, defaultUserActivityTypeRcd, userActivityNote, originatingAddress, referrer, defaultUserId, dateTime); foreach (CrudeDefaultUserActivityData data in dataList) { var crudeDefaultUserActivityBusinessModel = new CrudeDefaultUserActivityModel(); DataToModel(data, crudeDefaultUserActivityBusinessModel); list.Add(crudeDefaultUserActivityBusinessModel); } return(list); }
// copy all rows from a List of serialized data objects to a List of SOAP Contracts, // with a limit on number of returned rows and order by columns, starting at a specific row // links: // docLink: http://sql2x.org/documentationLink/3fe9f1b3-97b6-4f58-a0f2-adfcbd973bfc public List <CrudeDefaultUserActivityContract> FetchAllWithLimitAndOffset(int limit, int offset) { var list = new List <CrudeDefaultUserActivityContract>(); List <CrudeDefaultUserActivityData> dataList = CrudeDefaultUserActivityData.FetchAllWithLimitAndOffset(limit, offset); foreach (CrudeDefaultUserActivityData crudeDefaultUserActivity in dataList) { var contract = new CrudeDefaultUserActivityContract(); DataToContract(crudeDefaultUserActivity, contract); list.Add(contract); } return(list); }
// copy all rows from a List of serialized data objects in CrudeDefaultUserActivityData to a List of SOAP Contracts // links: // docLink: http://sql2x.org/documentationLink/9204c68e-93b8-4c77-af3c-3181985ff75f public List <CrudeDefaultUserActivityContract> FetchAll() { var list = new List <CrudeDefaultUserActivityContract>(); List <CrudeDefaultUserActivityData> dataList = CrudeDefaultUserActivityData.FetchAll(); foreach (CrudeDefaultUserActivityData crudeDefaultUserActivity in dataList) { var contract = new CrudeDefaultUserActivityContract(); DataToContract(crudeDefaultUserActivity, contract); list.Add(contract); } return(list); }
// fetch by Primary key into new class instance // links: // crud definition: https://en.wikipedia.org/wiki/Create,_read,_update_and_delete // docLink: http://sql2x.org/documentationLink/7a625d0a-3028-42ce-a543-72ea3673cef4 // parameters: // defaultUserActivityId: primary key of table default_user_activity public static CrudeDefaultUserActivityData GetByDefaultUserActivityId(System.Guid defaultUserActivityId) { // create query against default_user_activity // this will be ansi sql and parameterized // parameterized queries are a good way of preventing sql injection // and to make sure the query plan is pre-compiled // links: // docLink: http://sql2x.org/documentationLink/72f5fc83-c460-40fe-bac9-73b7ee0c6b77 string sql = @" select top 1 default_user_activity_id, default_user_activity_type_rcd, user_activity_note, originating_address, referrer, default_user_id, date_time from [default_user_activity] where default_user_activity_id = @default_user_activity_id"; var ret = new CrudeDefaultUserActivityData(); // open standard connection // the connection is found in web.config // the connection is closed upon completion of the reader // links: // docLink: http://sql2x.org/documentationLink/1ecca728-0c07-4dd7-b095-d10777b25b70 using (var conn = new SqlConnection(Conn.ConnectionString)) { conn.Open(); using (var command = new SqlCommand(sql, conn)) { // add primary key // this primary key will be used together with the prepared ansi sql statement // links: // docLink: http://sql2x.org/documentationLink/1ecca728-0c07-4dd7-b095-d10777b25b70 command.Parameters.Add("@default_user_activity_id", SqlDbType.UniqueIdentifier).Value = defaultUserActivityId; // execute query against default_user_activity // if the query fails in the preprocessor of sql server // an exception will be raised // links: // docLink: http://sql2x.org/documentationLink/fd5c5faa-b400-4f29-b12b-9675c53a757f IDataReader reader = command.ExecuteReader(CommandBehavior.SingleRow); // populate serialized class if a row was found if (reader.Read()) { ret.Populate(reader); } } } return(ret); }
// fetch all rows from table default_user_activity into new List of class instances // links: // docLink: http://sql2x.org/documentationLink/7ca0c014-527e-4a0a-bd1f-12f4d8ea4b43 public static List <CrudeDefaultUserActivityData> FetchAll() { var dataList = new List <CrudeDefaultUserActivityData>(); // create query against default_user_activity // this will be ansi sql and parameterized // parameterized queries are a good way of preventing sql injection // and to make sure the query plan is pre-compiled // links: // docLink: http://sql2x.org/documentationLink/72f9f1bc-447c-4327-9d26-4b0790a07ff8 string sql = @" select default_user_activity_id, default_user_activity_type_rcd, user_activity_note, originating_address, referrer, default_user_id, date_time from [default_user_activity]"; // open standard connection // the connection is found in web.config // the connection is closed upon completion of the reader // links: // docLink: http://sql2x.org/documentationLink/952b3f82-bc00-4e82-9430-6bc26ff8bc4d using (var conn = new SqlConnection(Conn.ConnectionString)) { conn.Open(); using (var command = new SqlCommand(sql, conn)) { // execute query against default_user_activity // if the query fails in the preprocessor of sql server // an exception will be raised // links: // docLink: http://sql2x.org/documentationLink/ed55cc5b-d6be-4f5e-9385-ee726dfc2bf1 IDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult); // read all rows returned from the query of default_user_activity // read all columns from the datareader and // populate the List of C# objects with them // links: // docLink: http://sql2x.org/documentationLink/c1b8b800-b250-4822-a699-d93a35f4414d while (reader.Read()) { var data = new CrudeDefaultUserActivityData(); data.Populate(reader); dataList.Add(data); } } return(dataList); } }
// fetch all from table into new List of class instances, with a limit on number of returned rows and order by columns // links: // docLink: http://sql2x.org/documentationLink/dfaa482b-059b-4f17-a9a9-4885138dbb46 public static List <CrudeDefaultUserActivityData> FetchAllWithLimit(int limit) { var dataList = new List <CrudeDefaultUserActivityData>(); // create query against default_user_activity // this will be ansi sql and parameterized // parameterized queries are a good way of preventing sql injection // and to make sure the query plan is pre-compiled // links: // docLink: http://sql2x.org/documentationLink/41f82773-6d37-4ebe-840c-c60e06337f45 string sql = @" select top " + limit.ToString() + @" default_user_activity_id, default_user_activity_type_rcd, user_activity_note, originating_address, referrer, default_user_id, date_time from [default_user_activity]"; // open standard connection // the connection is found in web.config // the connection is closed upon completion of the reader // links: // docLink: http://sql2x.org/documentationLink/da228d98-b30e-4d79-89ae-98e813437753 using (var conn = new SqlConnection(Conn.ConnectionString)) { conn.Open(); using (var command = new SqlCommand(sql, conn)) { // execute query against default_user_activity // if the query fails in the preprocessor of sql server // an exception will be raised // links: // docLink: http://sql2x.org/documentationLink/c32ad724-8a03-4b4c-b6fb-a5abfb1d707e IDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult); // read all rows returned from the query of default_user_activity // read all columns from the datareader and // populate the List of C# objects with them // links: // docLink: http://sql2x.org/documentationLink/9ba4395d-d8a4-4427-b80f-7b828e34da7a while (reader.Read()) { var data = new CrudeDefaultUserActivityData(); data.Populate(reader); dataList.Add(data); } } return(dataList); } }
// fetch all rows from table into new List of Contracts, filtered by any column // links: // docLink: http://sql2x.org/documentationLink/ce01ef4a-5cd0-4e51-b211-9c0a15b791a0 public List <CrudeDefaultUserActivityContract> FetchWithFilter(System.Guid defaultUserActivityId, string defaultUserActivityTypeRcd, string userActivityNote, string originatingAddress, string referrer, System.Guid defaultUserId, System.DateTime dateTime) { var list = new List <CrudeDefaultUserActivityContract>(); List <CrudeDefaultUserActivityData> dataList = CrudeDefaultUserActivityData.FetchWithFilter( defaultUserActivityId: defaultUserActivityId, defaultUserActivityTypeRcd: defaultUserActivityTypeRcd, userActivityNote: userActivityNote, originatingAddress: originatingAddress, referrer: referrer, defaultUserId: defaultUserId, dateTime: dateTime ); foreach (CrudeDefaultUserActivityData data in dataList) { var crudeDefaultUserActivityContract = new CrudeDefaultUserActivityContract(); DataToContract(data, crudeDefaultUserActivityContract); list.Add(crudeDefaultUserActivityContract); } return(list); }
/// <summary> /// Add an activity /// </summary> /// <param name="userId">User who triggered the activity</param> public void AddActivity( Guid userId, string userActivityTypeRcd, string activityNote, string originatingAddress ) { var defaultUserActivity = new CrudeDefaultUserActivityData(); defaultUserActivity.DefaultUserActivityId = Guid.NewGuid(); defaultUserActivity.DefaultUserActivityTypeRcd = userActivityTypeRcd; defaultUserActivity.UserActivityNote = activityNote; defaultUserActivity.OriginatingAddress = originatingAddress; defaultUserActivity.DefaultUserId = userId; defaultUserActivity.DateTime = DateTime.UtcNow; defaultUserActivity.Insert(); var defaultUser = new CrudeDefaultUserData(); defaultUser.FetchByDefaultUserId(userId); defaultUser.LastActivityDateTime = DateTime.UtcNow; defaultUser.Update(); // todo, possible to only update LastActivityDateTime? }
// delete a row in table based on primary key // links: // docLink: http://sql2x.org/documentationLink/eb0597e0-8ea0-425c-88af-213a170bbd5e public void Delete(System.Guid defaultUserActivityId) { CrudeDefaultUserActivityData.Delete(defaultUserActivityId); }
// get a count of rows in table // links: // docLink: http://sql2x.org/documentationLink/7cd5e52c-b3d7-4566-a27a-408d0732dd88 public int FetchAllCount() { return(CrudeDefaultUserActivityData.FetchAllCount()); }
// fetch by Foreign key into new List of class instances // links: // docLink: http://sql2x.org/documentationLink/a7599485-4f00-4ebf-974d-53f69c43654e public List <CrudeDefaultUserActivityContract> FetchByDefaultUserActivityTypeRcd(string defaultUserActivityTypeRcd) { return(DataListToContractList(CrudeDefaultUserActivityData.FetchByDefaultUserActivityTypeRcd(defaultUserActivityTypeRcd))); }
// fetch by Foreign key into new List of class instances // links: // docLink: http://sql2x.org/documentationLink/a7599485-4f00-4ebf-974d-53f69c43654e public List <CrudeDefaultUserActivityContract> FetchByDefaultUserId(System.Guid defaultUserId) { return(DataListToContractList(CrudeDefaultUserActivityData.FetchByDefaultUserId(defaultUserId))); }
// fetch all from table into new List of class instances, filtered by any column // links: // docLink: http://sql2x.org/documentationLink/a736bbfd-030d-492e-a86a-7a5e478eeb79 public static List <CrudeDefaultUserActivityData> FetchWithFilter(System.Guid defaultUserActivityId, string defaultUserActivityTypeRcd, string userActivityNote, string originatingAddress, string referrer, System.Guid defaultUserId, System.DateTime dateTime) { var dataList = new List <CrudeDefaultUserActivityData>(); // create query against default_user_activity // this will be ansi sql and parameterized // parameterized queries are a good way of preventing sql injection // and to make sure the query plan is pre-compiled // links: // docLink: http://sql2x.org/documentationLink/06da7a50-8760-48cd-b789-a41cac3edd13 string sql = @" select default_user_activity_id, default_user_activity_type_rcd, user_activity_note, originating_address, referrer, default_user_id, date_time from [default_user_activity] where 1 = 1"; // open standard connection // the connection is found in web.config // the connection is closed upon completion of the reader // links: // docLink: http://sql2x.org/documentationLink/6ec2495f-3a49-4a94-ad59-0ce064fc8654 using (var conn = new SqlConnection(Conn.ConnectionString)) { conn.Open(); using (var command = new SqlCommand(sql, conn)) { // add search column(s) if they are not null or empty // this search column(s) will be used together with the prepared ansi sql statement // links: // docLink: http://sql2x.org/documentationLink/2193123a-3534-412b-8521-dac14bb3884d if (defaultUserActivityId != Guid.Empty) { sql += " and default_user_activity_id = @default_user_activity_id"; command.Parameters.Add("@default_user_activity_id", SqlDbType.UniqueIdentifier).Value = defaultUserActivityId; } if (!string.IsNullOrEmpty(defaultUserActivityTypeRcd)) { sql += " and default_user_activity_type_rcd like '%' + @default_user_activity_type_rcd + '%'"; command.Parameters.Add("@default_user_activity_type_rcd", SqlDbType.NVarChar).Value = defaultUserActivityTypeRcd.Replace("'", "''"); } if (!string.IsNullOrEmpty(userActivityNote)) { sql += " and user_activity_note like '%' + @user_activity_note + '%'"; command.Parameters.Add("@user_activity_note", SqlDbType.NVarChar).Value = userActivityNote.Replace("'", "''"); } if (!string.IsNullOrEmpty(originatingAddress)) { sql += " and originating_address like '%' + @originating_address + '%'"; command.Parameters.Add("@originating_address", SqlDbType.NVarChar).Value = originatingAddress.Replace("'", "''"); } if (!string.IsNullOrEmpty(referrer)) { sql += " and referrer like '%' + @referrer + '%'"; command.Parameters.Add("@referrer", SqlDbType.NVarChar).Value = referrer.Replace("'", "''"); } if (defaultUserId != Guid.Empty) { sql += " and default_user_id = @default_user_id"; command.Parameters.Add("@default_user_id", SqlDbType.UniqueIdentifier).Value = defaultUserId; } if (dateTime != DateTime.MinValue) { sql += " and date_time = @date_time"; command.Parameters.Add("@date_time", SqlDbType.DateTime).Value = dateTime; } command.CommandText = sql; // execute query against default_user_activity // if the query fails in the preprocessor of sql server // an exception will be raised // links: // docLink: http://sql2x.org/documentationLink/9f9fcbf4-4764-4b2e-8dc6-41d0366c95c9 IDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult); // read all rows returned from the query of default_user_activity // read all columns from the datareader and // populate the List of C# objects with them // links: // docLink: http://sql2x.org/documentationLink/60181c7c-4a5e-41a3-9599-4e7a0aaf0cc8 while (reader.Read()) { var data = new CrudeDefaultUserActivityData(); data.Populate(reader); dataList.Add(data); } } return(dataList); } }