772 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			772 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| 
 | |
| // ========================================================================
 | |
| // Copyright 2006 - Volian Enterprises, Inc. All rights reserved.          
 | |
| // Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE
 | |
| // ------------------------------------------------------------------------
 | |
| // $Workfile: $     $Revision: $                                           
 | |
| // $Author: $   $Date: $                                                   
 | |
| //                                                                         
 | |
| // $History: $                                                             
 | |
| // ========================================================================
 | |
| 
 | |
| using System;
 | |
| using System.Data;
 | |
| using System.Data.SqlClient;
 | |
| using Csla;
 | |
| using Csla.Data;
 | |
| 
 | |
| namespace Volian.Object.Library
 | |
| {
 | |
| 	/// <summary>
 | |
| 	///	Connection Generated by MyGeneration using the CSLA Object Mapping template
 | |
| 	/// </summary>
 | |
| 	[Serializable()]
 | |
| 	public partial class Connection : BusinessBase<Connection>
 | |
| 	{
 | |
| 		#region Business Methods
 | |
| 
 | |
| 		private int _dbid;
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public int Dbid
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _dbid;
 | |
| 			}
 | |
| 		}
 | |
| 		private string _name=string.Empty;
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public string Name
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _name;
 | |
| 			}
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			set
 | |
| 			{
 | |
| 				CanWriteProperty(true);
 | |
| 				if (value == null) value = string.Empty;
 | |
| 				if (_name != value)
 | |
| 				{
 | |
| 					_name = value;
 | |
| 					PropertyHasChanged();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		private string _title=string.Empty;
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public string Title
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _title;
 | |
| 			}
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			set
 | |
| 			{
 | |
| 				CanWriteProperty(true);
 | |
| 				if (value == null) value = string.Empty;
 | |
| 				if (_title != value)
 | |
| 				{
 | |
| 					_title = value;
 | |
| 					PropertyHasChanged();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		private string _connectionstring=string.Empty;
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public string ConnectionString
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _connectionstring;
 | |
| 			}
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			set
 | |
| 			{
 | |
| 				CanWriteProperty(true);
 | |
| 				if (value == null) value = string.Empty;
 | |
| 				if (_connectionstring != value)
 | |
| 				{
 | |
| 					_connectionstring = value;
 | |
| 					PropertyHasChanged();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		private int _servertype;
 | |
| 		/// <summary>
 | |
| 		/// 0 SQL Server
 | |
| 		/// </summary>
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public int ServerType
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _servertype;
 | |
| 			}
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			set
 | |
| 			{
 | |
| 				CanWriteProperty(true);
 | |
| 				if (_servertype != value)
 | |
| 				{
 | |
| 					_servertype = value;
 | |
| 					PropertyHasChanged();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		private string _config=string.Empty;
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public string Config
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _config;
 | |
| 			}
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			set
 | |
| 			{
 | |
| 				CanWriteProperty(true);
 | |
| 				if (value == null) value = string.Empty;
 | |
| 				if (_config != value)
 | |
| 				{
 | |
| 					_config = value;
 | |
| 					PropertyHasChanged();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		private DateTime _dts=new DateTime();
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public DateTime Dts
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _dts;
 | |
| 			}
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			set
 | |
| 			{
 | |
| 				CanWriteProperty(true);
 | |
| 				if (_dts != value)
 | |
| 				{
 | |
| 					_dts = value;
 | |
| 					PropertyHasChanged();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		private string _usrid=string.Empty;
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public string Usrid
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _usrid;
 | |
| 			}
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			set
 | |
| 			{
 | |
| 				CanWriteProperty(true);
 | |
| 				if (value == null) value = string.Empty;
 | |
| 				if (_usrid != value)
 | |
| 				{
 | |
| 					_usrid = value;
 | |
| 					PropertyHasChanged();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		private byte[] _lastchanged=new byte[8];//timestamp
 | |
| 		private ConnectionFolders _connectionfolders = ConnectionFolders.New();
 | |
| 		/// <summary>
 | |
| 		/// Related Field
 | |
| 		/// </summary>
 | |
| 		[System.ComponentModel.DataObjectField(true, true)]
 | |
| 		public ConnectionFolders ConnectionFolders
 | |
| 		{
 | |
| 			[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
| 			get
 | |
| 			{
 | |
| 				CanReadProperty(true);
 | |
| 				return _connectionfolders;
 | |
| 			}
 | |
| 		}
 | |
| 	    public override bool IsDirty
 | |
| 		{
 | |
| 			get { return base.IsDirty   || _connectionfolders.IsDirty ; }
 | |
| 		}
 | |
| 	    public override bool IsValid
 | |
| 		{
 | |
| 			get { return base.IsValid   && _connectionfolders.IsValid ; }
 | |
| 		}
 | |
| 		// TODO: Replace base Connection.ToString function as necessary
 | |
| 		/// <summary>
 | |
| 		/// Overrides Base ToString
 | |
| 		/// </summary>
 | |
| 		/// <returns>A string representation of current Connection</returns>
 | |
| 		//public override string ToString()
 | |
| 		//{
 | |
| 		//  return base.ToString();
 | |
| 		//}
 | |
| 
 | |
| 		// TODO: Check Connection.GetIdValue to assure that the ID returned is unique
 | |
| 		/// <summary>
 | |
| 		/// Overrides Base GetIdValue - Used internally by CSLA to determine equality
 | |
| 		/// </summary>
 | |
| 		/// <returns>A Unique ID for the current Connection</returns>
 | |
| 		protected override object GetIdValue()
 | |
| 		{
 | |
| 			return _dbid;
 | |
| 		}
 | |
| 
 | |
| 		#endregion
 | |
| 
 | |
| 		#region ValidationRules
 | |
| 
 | |
| 		protected override void AddBusinessRules()
 | |
| 		{
 | |
| 			ValidationRules.AddRule(
 | |
| 				Csla.Validation.CommonRules.StringMaxLength, 
 | |
| 				new Csla.Validation.CommonRules.MaxLengthRuleArgs("Name", 100));
 | |
| 			ValidationRules.AddRule(
 | |
| 				Csla.Validation.CommonRules.StringMaxLength, 
 | |
| 				new Csla.Validation.CommonRules.MaxLengthRuleArgs("Title", 510));
 | |
| 			ValidationRules.AddRule(
 | |
| 				Csla.Validation.CommonRules.StringMaxLength, 
 | |
| 				new Csla.Validation.CommonRules.MaxLengthRuleArgs("ConnectionString", 510));
 | |
| 			ValidationRules.AddRule(
 | |
| 				Csla.Validation.CommonRules.StringMaxLength, 
 | |
| 				new Csla.Validation.CommonRules.MaxLengthRuleArgs("Config", 1073741823));
 | |
| 			ValidationRules.AddRule(
 | |
| 				Csla.Validation.CommonRules.StringMaxLength, 
 | |
| 				new Csla.Validation.CommonRules.MaxLengthRuleArgs("Usrid", 100));
 | |
| 		ext.AddValidationRules(ValidationRules);
 | |
| 		// TODO:  Add other validation rules
 | |
| 		//	ValidationRules.AddRule(StartDateGTEndDate, "Started");
 | |
| 		}
 | |
| 		// Sample data comparison validation rule
 | |
| 		//private bool StartDateGTEndDate(object target, Csla.Validation.RuleArgs e)
 | |
| 		//{
 | |
| 		//	if (_started > _ended)
 | |
| 		//	{
 | |
| 		//		e.Description = "Start date can't be after end date";
 | |
| 		//		return false;
 | |
| 		//	}
 | |
| 		//	else
 | |
| 		//		return true;
 | |
| 		//}
 | |
| 
 | |
| 		#endregion
 | |
| 
 | |
| 		#region Authorization Rules
 | |
| 		protected override void AddAuthorizationRules()
 | |
| 		{
 | |
| 			//TODO: Who can read/write which fields
 | |
| 			//AuthorizationRules.AllowRead(Dbid, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowRead(Name, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowRead(Title, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowRead(ConnectionString, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowRead(ServerType, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowRead(Config, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowRead(Dts, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowRead(Usrid, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowWrite(Name, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowWrite(Title, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowWrite(ConnectionString, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowWrite(ServerType, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowWrite(Config, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowWrite(Dts, "<Role(s)>");
 | |
| 			//AuthorizationRules.AllowWrite(Usrid, "<Role(s)>");
 | |
| 			ext.AddAuthorizationRules(AuthorizationRules);
 | |
| 		}
 | |
| 	
 | |
| 		public static bool CanAddObject()
 | |
| 		{
 | |
| 			// TODO: Can Add Authorization
 | |
| 			//return Csla.ApplicationContext.User.IsInRole("ProjectManager");
 | |
| 			return true;
 | |
| 		}
 | |
| 	
 | |
| 		public static bool CanGetObject()
 | |
| 		{
 | |
| 			// TODO: CanGet Authorization
 | |
| 			return true;
 | |
| 		}
 | |
| 	
 | |
| 		public static bool CanDeleteObject()
 | |
| 		{
 | |
| 			// TODO: CanDelete Authorization
 | |
| 			//bool result = false;
 | |
| 			//if (Csla.ApplicationContext.User.IsInRole("ProjectManager"))result = true;
 | |
| 			//if (Csla.ApplicationContext.User.IsInRole("Administrator"))result = true;
 | |
| 			//return result;
 | |
| 			return true;
 | |
| 		}
 | |
| 	
 | |
| 		public static bool CanEditObject()
 | |
| 		{
 | |
| 			// TODO: CanEdit Authorization
 | |
| 			//return Csla.ApplicationContext.User.IsInRole("ProjectManager");
 | |
| 			return true;
 | |
| 		}
 | |
| 		#endregion
 | |
| 		#region Factory Methods
 | |
| 		
 | |
| 		private Connection()
 | |
| 		{/* require use of factory methods */}
 | |
| 	
 | |
| 		public static Connection New()
 | |
| 		{
 | |
| 		  if (!CanAddObject())
 | |
| 			throw new System.Security.SecurityException("User not authorized to add a Connection");
 | |
| 		  return DataPortal.Create<Connection>();
 | |
| 		}
 | |
| 	
 | |
| 		public static Connection Get(int _dbid)
 | |
| 		{
 | |
| 		  if (!CanGetObject())
 | |
| 			throw new System.Security.SecurityException("User not authorized to view a Connection");
 | |
| 		  return DataPortal.Fetch<Connection>(new PKCriteria(_dbid));
 | |
| 		}
 | |
| 	
 | |
| 		public static void Delete(int _dbid)
 | |
| 		{
 | |
| 			if (!CanDeleteObject())
 | |
| 			throw new System.Security.SecurityException("User not authorized to remove a Connection");
 | |
| 		  DataPortal.Delete(new PKCriteria(_dbid));
 | |
| 		}
 | |
| 	
 | |
| 		public override Connection Save()
 | |
| 		{
 | |
| 		  if (IsDeleted && !CanDeleteObject())
 | |
| 			throw new System.Security.SecurityException("User not authorized to remove a Connection");
 | |
| 		  else if (IsNew && !CanAddObject())
 | |
| 			throw new System.Security.SecurityException("User not authorized to add a Connection");
 | |
| 		  else if (!CanEditObject())
 | |
| 			throw new System.Security.SecurityException("User not authorized to update a Connection");
 | |
| 		  return base.Save();
 | |
| 		}
 | |
| 
 | |
| 		#endregion
 | |
| 
 | |
| 		#region Data Access Portal
 | |
| 
 | |
| 		[Serializable()]
 | |
| 		private class PKCriteria
 | |
| 		{
 | |
| 			private int _dbid;
 | |
| 			public int Dbid
 | |
| 			{ get {return _dbid;}}		
 | |
| 			public PKCriteria(int dbid)
 | |
| 			{
 | |
| 				_dbid=dbid; 
 | |
| 			}
 | |
| 		}
 | |
| 		// If Create needs to access DB - It should not be marked RunLocal
 | |
| 		[RunLocal()]
 | |
| 		private new void DataPortal_Create(object criteria)
 | |
| 		{
 | |
| 		
 | |
| 			// Database Defaults
 | |
| 				_servertype = ext.DefaultServerType;
 | |
| 				_dts = ext.DefaultDts;
 | |
| 				_usrid = ext.DefaultUsrid;
 | |
| 			// TODO: Add any defaults that are necessary
 | |
| 			ValidationRules.CheckRules();
 | |
| 		}
 | |
| 	
 | |
| 		private void DataPortal_Fetch(PKCriteria criteria)
 | |
| 		{
 | |
| 			try{
 | |
| 			using (SqlConnection cn = Database.VEPROMS_SqlConnection)
 | |
| 			{
 | |
| 				using (SqlCommand cm = cn.CreateCommand())
 | |
| 				{
 | |
| 					cm.CommandType = CommandType.StoredProcedure;
 | |
| 					cm.CommandText = "getConnection";
 | |
| 					cm.Parameters.AddWithValue("@dBID", criteria.Dbid);
 | |
| 					using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader()))
 | |
| 					{
 | |
| 						dr.Read();
 | |
| 						_dbid = dr.GetInt32("DBID");
 | |
| 						_name = dr.GetString("Name");
 | |
| 						_title = dr.GetString("Title");
 | |
| 						_connectionstring = dr.GetString("ConnectionString");
 | |
| 						_servertype = dr.GetInt32("ServerType");
 | |
| 						_config = dr.GetString("Config");
 | |
| 						_dts = dr.GetDateTime("DTS");
 | |
| 						_usrid = dr.GetString("UsrID");
 | |
| 						dr.GetBytes("LastChanged", 0, _lastchanged, 0, 8);
 | |
| 						// load child objects
 | |
| 						dr.NextResult();
 | |
| 						_connectionfolders = ConnectionFolders.Get(dr);
 | |
| 
 | |
| 					}
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		catch(Exception ex)
 | |
| 		{
 | |
| 			Database.LogException("Connection",ex);
 | |
| 		}
 | |
| 		}
 | |
| 		[Transactional(TransactionalTypes.TransactionScope)]
 | |
| 		protected override void DataPortal_Insert()
 | |
| 		{
 | |
| 			try{
 | |
| 			using (SqlConnection cn = Database.VEPROMS_SqlConnection)
 | |
| 			{
 | |
| 				using (SqlCommand cm = cn.CreateCommand())
 | |
| 				{
 | |
| 					cm.CommandType = CommandType.StoredProcedure;
 | |
| 					cm.CommandText = "addConnection";
 | |
| 					// Input All Fields - Except Calculated Columns
 | |
| 					cm.Parameters.AddWithValue("@name", _name);
 | |
| 					cm.Parameters.AddWithValue("@title", _title);
 | |
| 					cm.Parameters.AddWithValue("@connectionString", _connectionstring);
 | |
| 					cm.Parameters.AddWithValue("@serverType", _servertype);
 | |
| 					cm.Parameters.AddWithValue("@config", _config);
 | |
| 					cm.Parameters.AddWithValue("@dTS", _dts);
 | |
| 					cm.Parameters.AddWithValue("@usrID", _usrid);
 | |
| 					// Output Calculated Columns
 | |
| 					SqlParameter param_dbid = new SqlParameter("@newDBID",SqlDbType.Int);
 | |
| 					param_dbid.Direction = ParameterDirection.Output;
 | |
| 					cm.Parameters.Add(param_dbid);
 | |
| 					SqlParameter param_lastchanged = new SqlParameter("@newLastChanged",SqlDbType.Timestamp);
 | |
| 					param_lastchanged.Direction = ParameterDirection.Output;
 | |
| 					cm.Parameters.Add(param_lastchanged);
 | |
| 					// TODO: Define any additional output parameters
 | |
| 					cm.ExecuteNonQuery();
 | |
| 					// Save all values being returned from the Procedure
 | |
| 					_dbid = (int)cm.Parameters["@newDBID"].Value;
 | |
| 					_lastchanged = (byte[])cm.Parameters["@newLastChanged"].Value;
 | |
| 			}
 | |
| 		  // update child objects
 | |
| 						_connectionfolders.Update(this,cn);
 | |
| 
 | |
| 				}
 | |
| 				
 | |
| 		}
 | |
| 		catch(Exception ex)
 | |
| 		{
 | |
| 			Database.LogException("Connection",ex);
 | |
| 		}}
 | |
| 
 | |
| 		[Transactional(TransactionalTypes.TransactionScope)]
 | |
| 		public static byte[] Add(SqlConnection cn,ref int dbid, string name, string title, string connectionstring, int servertype, string config, DateTime dts, string usrid)
 | |
| 		{
 | |
| 			try{
 | |
| 			using (SqlCommand cm = cn.CreateCommand())
 | |
| 			{
 | |
| 				cm.CommandType = CommandType.StoredProcedure;
 | |
| 				cm.CommandText = "addConnection";
 | |
| 				// Input All Fields - Except Calculated Columns
 | |
| 
 | |
| 					cm.Parameters.AddWithValue("@name", name);
 | |
| 					cm.Parameters.AddWithValue("@title", title);
 | |
| 					cm.Parameters.AddWithValue("@connectionString", connectionstring);
 | |
| 					cm.Parameters.AddWithValue("@serverType", servertype);
 | |
| 					cm.Parameters.AddWithValue("@config", config);
 | |
| 					cm.Parameters.AddWithValue("@dTS", dts);
 | |
| 					cm.Parameters.AddWithValue("@usrID", usrid);
 | |
| 				// Output Calculated Columns
 | |
| 			SqlParameter param_dbid = new SqlParameter("@newDBID",SqlDbType.Int);
 | |
| 			param_dbid.Direction = ParameterDirection.Output;
 | |
| 			cm.Parameters.Add(param_dbid);
 | |
| 			SqlParameter param_lastchanged = new SqlParameter("@newLastChanged",SqlDbType.Timestamp);
 | |
| 			param_lastchanged.Direction = ParameterDirection.Output;
 | |
| 			cm.Parameters.Add(param_lastchanged);
 | |
| 				// TODO: Define any additional output parameters
 | |
| 				cm.ExecuteNonQuery();
 | |
| 				// Save all values being returned from the Procedure
 | |
| 					dbid = (int)cm.Parameters["@newDBID"].Value;
 | |
| 			return (byte[])cm.Parameters["@newLastChanged"].Value;
 | |
| 			}
 | |
| 		}
 | |
| 		catch(Exception ex)
 | |
| 		{
 | |
| 			Database.LogException("Connection",ex);
 | |
| 			return null;
 | |
| 		}
 | |
| 		}
 | |
| 		[Transactional(TransactionalTypes.TransactionScope)]
 | |
| 		protected override void DataPortal_Update()
 | |
| 		{
 | |
| 			if (IsDirty)// If this is dirty - open the connection
 | |
| 			{
 | |
| 				try{
 | |
| 				using (SqlConnection cn = Database.VEPROMS_SqlConnection)
 | |
| 				{
 | |
| 					if(base.IsDirty)
 | |
| 					{
 | |
| 						using (SqlCommand cm = cn.CreateCommand())
 | |
| 						{
 | |
| 							cm.CommandType = CommandType.StoredProcedure;
 | |
| 							cm.CommandText = "updateConnection";
 | |
| 							// All Fields including Calculated Fields
 | |
| 					cm.Parameters.AddWithValue("@dBID", _dbid);
 | |
| 					cm.Parameters.AddWithValue("@name", _name);
 | |
| 					cm.Parameters.AddWithValue("@title", _title);
 | |
| 					cm.Parameters.AddWithValue("@connectionString", _connectionstring);
 | |
| 					cm.Parameters.AddWithValue("@serverType", _servertype);
 | |
| 					cm.Parameters.AddWithValue("@config", _config);
 | |
| 					cm.Parameters.AddWithValue("@dTS", _dts);
 | |
| 					cm.Parameters.AddWithValue("@usrID", _usrid);
 | |
| 					cm.Parameters.AddWithValue("@lastChanged", _lastchanged);
 | |
| 					// Output Calculated Columns
 | |
| 					SqlParameter param_lastchanged = new SqlParameter("@newLastChanged",SqlDbType.Timestamp);
 | |
| 					param_lastchanged.Direction = ParameterDirection.Output;
 | |
| 					cm.Parameters.Add(param_lastchanged);
 | |
| 							// TODO: Define any additional output parameters
 | |
| 							cm.ExecuteNonQuery();
 | |
| 							// Save all values being returned from the Procedure
 | |
| 					_lastchanged = (byte[])cm.Parameters["@newLastChanged"].Value;
 | |
| 				}
 | |
| 				}
 | |
| 				// use the open connection to update child objects
 | |
| 						_connectionfolders.Update(this,cn);
 | |
| 
 | |
| 					}
 | |
| 				}
 | |
| 			catch(Exception ex)
 | |
| 			{
 | |
| 				Database.LogException("Connection",ex);
 | |
| 			}
 | |
| 			
 | |
| 			}
 | |
| 		}
 | |
| 	
 | |
| 
 | |
| 		[Transactional(TransactionalTypes.TransactionScope)]
 | |
| 		public static byte[] Update(SqlConnection cn,ref int dbid, string name, string title, string connectionstring, int servertype, string config, DateTime dts, string usrid, ref byte[] lastchanged)
 | |
| 		{
 | |
| 			try{
 | |
| 			using (SqlCommand cm = cn.CreateCommand())
 | |
| 			{
 | |
| 				cm.CommandType = CommandType.StoredProcedure;
 | |
| 				cm.CommandText = "updateConnection";
 | |
| 				// Input All Fields - Except Calculated Columns
 | |
| 
 | |
| 					cm.Parameters.AddWithValue("@dBID", dbid);
 | |
| 					cm.Parameters.AddWithValue("@name", name);
 | |
| 					cm.Parameters.AddWithValue("@title", title);
 | |
| 					cm.Parameters.AddWithValue("@connectionString", connectionstring);
 | |
| 					cm.Parameters.AddWithValue("@serverType", servertype);
 | |
| 					cm.Parameters.AddWithValue("@config", config);
 | |
| 					cm.Parameters.AddWithValue("@dTS", dts);
 | |
| 					cm.Parameters.AddWithValue("@usrID", usrid);
 | |
| 					cm.Parameters.AddWithValue("@lastChanged", lastchanged);
 | |
| 				// Output Calculated Columns
 | |
| 			SqlParameter param_lastchanged = new SqlParameter("@newLastChanged",SqlDbType.Timestamp);
 | |
| 			param_lastchanged.Direction = ParameterDirection.Output;
 | |
| 			cm.Parameters.Add(param_lastchanged);
 | |
| 				// TODO: Define any additional output parameters
 | |
| 				cm.ExecuteNonQuery();
 | |
| 				// Save all values being returned from the Procedure
 | |
| 			return (byte[])cm.Parameters["@newLastChanged"].Value;
 | |
| 			}
 | |
| 		}
 | |
| 		catch(Exception ex)
 | |
| 		{
 | |
| 			Database.LogException("Connection",ex);
 | |
| 			return null;
 | |
| 		}
 | |
| 		}
 | |
| 		[Transactional(TransactionalTypes.TransactionScope)]
 | |
| 		protected override void DataPortal_DeleteSelf()
 | |
| 		{
 | |
| 		  DataPortal_Delete(new PKCriteria(_dbid));
 | |
| 		}
 | |
| 	
 | |
| 
 | |
| 		[Transactional(TransactionalTypes.TransactionScope)]
 | |
| 		private void DataPortal_Delete(PKCriteria criteria)
 | |
| 		{
 | |
| 			try{
 | |
| 			using (SqlConnection cn = Database.VEPROMS_SqlConnection)
 | |
| 			{
 | |
| 				using (SqlCommand cm = cn.CreateCommand())
 | |
| 				{
 | |
| 					cm.CommandType = CommandType.StoredProcedure;
 | |
| 					cm.CommandText = "deleteConnection";
 | |
| 					cm.Parameters.AddWithValue("@dBID", criteria.Dbid);
 | |
| 					cm.ExecuteNonQuery();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		catch(Exception ex)
 | |
| 		{
 | |
| 			Database.LogException("Connection",ex);
 | |
| 		}
 | |
| 		}
 | |
| 
 | |
| 		[Transactional(TransactionalTypes.TransactionScope)]
 | |
| 		public static void Remove(SqlConnection cn,int dbid)
 | |
| 		{
 | |
| 			try{
 | |
| 			using (SqlCommand cm = cn.CreateCommand())
 | |
| 			{
 | |
| 				cm.CommandType = CommandType.StoredProcedure;
 | |
| 				cm.CommandText = "deleteConnection";
 | |
| 				// Input PK Fields
 | |
| 
 | |
| 					cm.Parameters.AddWithValue("@dBID", dbid);
 | |
| 				// TODO: Define any additional output parameters
 | |
| 				cm.ExecuteNonQuery();
 | |
| 			}
 | |
| 		}
 | |
| 		catch(Exception ex)
 | |
| 		{
 | |
| 			Database.LogException("Connection",ex);
 | |
| 		}
 | |
| 		}
 | |
| 
 | |
| 		#endregion
 | |
| 
 | |
| 		#region Exists
 | |
| 
 | |
| 
 | |
|     public static bool Exists(int dbid)
 | |
|     {
 | |
|       ExistsCommand result;
 | |
|       result = DataPortal.Execute<ExistsCommand>
 | |
|         (new ExistsCommand(dbid));
 | |
|       return result.Exists;
 | |
|     }
 | |
| 
 | |
|     [Serializable()]
 | |
|     private class ExistsCommand : CommandBase
 | |
|     {
 | |
| 
 | |
| 			private int _dbid;
 | |
| 		private bool _exists;
 | |
| 
 | |
|       public bool Exists
 | |
|       {
 | |
|         get { return _exists; }
 | |
|       }
 | |
| 
 | |
|       public ExistsCommand(int dbid)
 | |
|       {
 | |
| 				_dbid=dbid;
 | |
| 		}
 | |
| 
 | |
|       protected override void DataPortal_Execute()
 | |
|       {
 | |
| 		try{
 | |
|         using (SqlConnection cn = Database.VEPROMS_SqlConnection)
 | |
|         {
 | |
|           cn.Open();
 | |
|           using (SqlCommand cm = cn.CreateCommand())
 | |
|           {
 | |
|             cm.CommandType = CommandType.StoredProcedure;
 | |
|             cm.CommandText = "existsConnection";
 | |
| 
 | |
| 			cm.Parameters.AddWithValue("@dBID", _dbid);
 | |
| 			int count = (int)cm.ExecuteScalar();
 | |
|             _exists = (count > 0);
 | |
|           }
 | |
|         }
 | |
| 		}
 | |
| 		catch(Exception ex)
 | |
| 		{
 | |
| 			Database.LogException("Connection",ex);
 | |
| 		}
 | |
|       }
 | |
|     }
 | |
| 
 | |
| 		#endregion
 | |
| 
 | |
| // Standard Default Code
 | |
| 		//	#region extension
 | |
| 		Extension ext = new Extension();
 | |
| 		[Serializable()]
 | |
| 		partial class Extension : extensionBase
 | |
| 		{
 | |
| 		}
 | |
| 		[Serializable()]
 | |
| 		class extensionBase
 | |
| 		{
 | |
| 			// Default Values
 | |
| 			public virtual int DefaultServerType
 | |
| 			{
 | |
| 				get { return 1; }
 | |
| 			}
 | |
| 			public virtual DateTime DefaultDts
 | |
| 			{
 | |
| 				get { return DateTime.Now; }
 | |
| 			}
 | |
| 			public virtual string DefaultUsrid
 | |
| 			{
 | |
| 				get { return Environment.UserName.ToUpper(); }
 | |
| 			}
 | |
| 			// Authorization Rules
 | |
| 			public virtual void AddAuthorizationRules(Csla.Security.AuthorizationRules rules)
 | |
| 			{
 | |
| 				// Needs to be overriden to add new authorization rules
 | |
| 			}
 | |
| 			// Validation Rules
 | |
| 			public virtual void AddValidationRules(Csla.Validation.ValidationRules rules)
 | |
| 			{
 | |
| 				// Needs to be overriden to add new validation rules
 | |
| 			}
 | |
| 		}
 | |
| 		//#endregion
 | |
| 
 | |
| // The follwing is a sample Extension File.  You can use it to create ConnectionExt.cs
 | |
| //using System;
 | |
| //using System.Collections.Generic;
 | |
| //using System.Text;
 | |
| //using Csla;
 | |
| 
 | |
| //namespace PatrialClass
 | |
| //{
 | |
| //  public partial class Connection
 | |
| //  {
 | |
| //    partial class Extension : extensionBase
 | |
| //    {
 | |
| // TODO: Override automatic defaults
 | |
| //			public virtual int DefaultServerType
 | |
| //			{
 | |
| //				get { return 1; }
 | |
| //			}
 | |
| //			public virtual DateTime DefaultDts
 | |
| //			{
 | |
| //				get { return DateTime.Now; }
 | |
| //			}
 | |
| //			public virtual string DefaultUsrid
 | |
| //			{
 | |
| //				get { return Environment.UserName.ToUpper(); }
 | |
| //			}
 | |
| //      public new void AddAuthorizationRules(Csla.Security.AuthorizationRules rules)
 | |
| //      {
 | |
| //        //rules.AllowRead(Dbid, "<Role(s)>");
 | |
| //      }
 | |
| //      public new void AddValidationRules(Csla.Validation.ValidationRules rules)
 | |
| //      {
 | |
| //			rules.AddRule(
 | |
| //				Csla.Validation.CommonRules.StringMaxLength, 
 | |
| //				new Csla.Validation.CommonRules.MaxLengthRuleArgs("Name", 100));
 | |
| //      }
 | |
| //    }
 | |
| //  }
 | |
| //}
 | |
| 
 | |
| 	} // Class
 | |
| } // Namespace
 |