コード例 #1
0
		private static void InitializeView (ObjectViewPoker view, InitViewType initType, out Hashtable keys, out Hashtable old_value, out Hashtable new_value) 
		{
			view.TypeName = typeof (DummyDataSourceObject).AssemblyQualifiedName;
			view.OldValuesParameterFormatString = "oldvalue_{0}";
			view.SelectMethod = "Select";
			if (initType == InitViewType.DontMatchParams) {
				view.UpdateMethod = "UpdateOther";
				view.InsertMethod = "InsertOther";
				view.DeleteMethod = "DeleteOther";
			}
			else {
				view.UpdateMethod = "Update";
				view.InsertMethod = "Insert";
				view.DeleteMethod = "Delete";
			}

			Parameter selectParameter = null;
			Parameter insertParameter = null;
			Parameter updateParameter = null;
			Parameter deleteParameter = null;

			selectParameter = new AlwaysChangingParameter ("filter", TypeCode.String, "p_ValueSelect");
			view.SelectParameters.Add (selectParameter);

			switch (initType) {
			case InitViewType.MatchParamsToOldValues:
				insertParameter = new AlwaysChangingParameter ("oldvalue_ID", TypeCode.String, "p_OldValueInsert");
				view.InsertParameters.Add (insertParameter);
				updateParameter = new AlwaysChangingParameter ("oldvalue_ID", TypeCode.String, "p_OldValueUpdate");
				view.UpdateParameters.Add (updateParameter);
				deleteParameter = new AlwaysChangingParameter ("oldvalue_ID", TypeCode.String, "p_OldValueDelete");
				view.DeleteParameters.Add (deleteParameter);
				break;

			case InitViewType.MatchParamsToValues:
				insertParameter = new AlwaysChangingParameter ("ID", TypeCode.String, "p_ValueInsert");
				view.InsertParameters.Add (insertParameter);
				updateParameter = new AlwaysChangingParameter ("ID", TypeCode.String, "p_ValueUpdate");
				view.UpdateParameters.Add (updateParameter);
				deleteParameter = new AlwaysChangingParameter ("ID", TypeCode.String, "p_ValueDelete");
				view.DeleteParameters.Add (deleteParameter);
				break;

			case InitViewType.DontMatchParams:
				insertParameter = new AlwaysChangingParameter ("OtherValue", TypeCode.String, "p_OtherValueInsert");
				view.InsertParameters.Add (insertParameter);
				updateParameter = new AlwaysChangingParameter ("OtherValue", TypeCode.String, "p_OtherValueUpdate");
				view.UpdateParameters.Add (updateParameter);
				deleteParameter = new AlwaysChangingParameter ("OtherValue", TypeCode.String, "p_OtherValueDelete");
				view.DeleteParameters.Add (deleteParameter);
				break;
			}

			view.SelectParameters.ParametersChanged += new EventHandler (SelectParameters_ParametersChanged);
			view.InsertParameters.ParametersChanged += new EventHandler (InsertParameters_ParametersChanged);
			view.UpdateParameters.ParametersChanged += new EventHandler (UpdateParameters_ParametersChanged);
			view.DeleteParameters.ParametersChanged += new EventHandler (DeleteParameters_ParametersChanged);

			keys = new Hashtable ();
			keys.Add ("ID", "k_1001");

			old_value = new Hashtable ();
			old_value.Add ("ID", "ov_1001");

			new_value = new Hashtable ();
			new_value.Add ("ID", "n_1001");

			view.DataSourceViewChanged += new EventHandler (view_DataSourceViewChanged);
		}
コード例 #2
0
		private static SqlViewPoker InitializeView (InitViewType initType, ConflictOptions conflictDetection, out Hashtable keys, out Hashtable old_value, out Hashtable new_value) 
		{
			SqlDataSource ds = new SqlDataSource ();
			ds.ConnectionString = "Data Source=fake\\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa";
			ds.ProviderName = "System.Data.SqlClient";
			SqlViewPoker view = new SqlViewPoker (ds, "DefaultView", null);

			view.ConflictDetection = conflictDetection;
			view.OldValuesParameterFormatString = "oldvalue_{0}";
			view.SelectCommandType = SqlDataSourceCommandType.Text;
			view.InsertCommandType = SqlDataSourceCommandType.Text;
			view.UpdateCommandType = SqlDataSourceCommandType.Text;
			view.DeleteCommandType = SqlDataSourceCommandType.Text;

			view.SelectCommand = "SELECT * FROM Customers WHERE ID = @ID";
			view.InsertCommand = "INSERT INTO Customers (ID) VALUES (@ID)";
			view.UpdateCommand = "UPDATE Customers SET ID = @ID WHERE ID = @oldvalue_ID";
			view.DeleteCommand = "DELETE * FROM Customers WHERE ID = @ID";

			Parameter selectParameter = null;
			Parameter insertParameter = null;
			Parameter updateParameter = null;
			Parameter deleteParameter = null;

			selectParameter = new AlwaysChangingParameter ("ID", TypeCode.String, "p_ValueSelect");
			view.SelectParameters.Add (selectParameter);

			switch (initType) {
			case InitViewType.MatchParamsToOldValues:
				insertParameter = new AlwaysChangingParameter ("oldvalue_ID", TypeCode.String, "p_OldValueInsert");
				view.InsertParameters.Add (insertParameter);
				updateParameter = new AlwaysChangingParameter ("oldvalue_ID", TypeCode.String, "p_OldValueUpdate");
				view.UpdateParameters.Add (updateParameter);
				deleteParameter = new AlwaysChangingParameter ("oldvalue_ID", TypeCode.String, "p_OldValueDelete");
				view.DeleteParameters.Add (deleteParameter);
				break;

			case InitViewType.MatchParamsToValues:
				insertParameter = new AlwaysChangingParameter ("ID", TypeCode.String, "p_ValueInsert");
				view.InsertParameters.Add (insertParameter);
				updateParameter = new AlwaysChangingParameter ("ID", TypeCode.String, "p_ValueUpdate");
				view.UpdateParameters.Add (updateParameter);
				deleteParameter = new AlwaysChangingParameter ("ID", TypeCode.String, "p_ValueDelete");
				view.DeleteParameters.Add (deleteParameter);
				break;

			case InitViewType.DontMatchParams:
				insertParameter = new AlwaysChangingParameter ("OtherValue", TypeCode.String, "p_OtherValueInsert");
				view.InsertParameters.Add (insertParameter);
				updateParameter = new AlwaysChangingParameter ("OtherValue", TypeCode.String, "p_OtherValueUpdate");
				view.UpdateParameters.Add (updateParameter);
				deleteParameter = new AlwaysChangingParameter ("OtherValue", TypeCode.String, "p_OtherValueDelete");
				view.DeleteParameters.Add (deleteParameter);
				break;
			}

			view.SelectParameters.ParametersChanged += new EventHandler (SelectParameters_ParametersChanged);
			view.InsertParameters.ParametersChanged += new EventHandler (InsertParameters_ParametersChanged);
			view.UpdateParameters.ParametersChanged += new EventHandler (UpdateParameters_ParametersChanged);
			view.DeleteParameters.ParametersChanged += new EventHandler (DeleteParameters_ParametersChanged);

			keys = new Hashtable ();
			keys.Add ("ID", "k_1001");

			old_value = new Hashtable ();
			old_value.Add ("ID", "ov_1001");

			new_value = new Hashtable ();
			new_value.Add ("ID", "n_1001");

			view.DataSourceViewChanged += new EventHandler (view_DataSourceViewChanged);

			view.Selecting += new SqlDataSourceSelectingEventHandler (view_Selecting);
			view.Inserting += new SqlDataSourceCommandEventHandler (view_Inserting);
			view.Updating += new SqlDataSourceCommandEventHandler (view_Updating);
			view.Deleting += new SqlDataSourceCommandEventHandler (view_Deleting);
			return view;
		}
コード例 #3
0
        private static SqlViewPoker InitializeView(InitViewType initType, ConflictOptions conflictDetection, out Hashtable keys, out Hashtable old_value, out Hashtable new_value)
        {
            SqlDataSource ds = new SqlDataSource();

            ds.ConnectionString = "Data Source=fake\\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa";
            ds.ProviderName     = "System.Data.SqlClient";
            SqlViewPoker view = new SqlViewPoker(ds, "DefaultView", null);

            view.ConflictDetection = conflictDetection;
            view.OldValuesParameterFormatString = "oldvalue_{0}";
            view.SelectCommandType = SqlDataSourceCommandType.Text;
            view.InsertCommandType = SqlDataSourceCommandType.Text;
            view.UpdateCommandType = SqlDataSourceCommandType.Text;
            view.DeleteCommandType = SqlDataSourceCommandType.Text;

            view.SelectCommand = "SELECT * FROM Customers WHERE ID = @ID";
            view.InsertCommand = "INSERT INTO Customers (ID) VALUES (@ID)";
            view.UpdateCommand = "UPDATE Customers SET ID = @ID WHERE ID = @oldvalue_ID";
            view.DeleteCommand = "DELETE * FROM Customers WHERE ID = @ID";

            Parameter selectParameter = null;
            Parameter insertParameter = null;
            Parameter updateParameter = null;
            Parameter deleteParameter = null;

            selectParameter = new AlwaysChangingParameter("ID", TypeCode.String, "p_ValueSelect");
            view.SelectParameters.Add(selectParameter);

            switch (initType)
            {
            case InitViewType.MatchParamsToOldValues:
                insertParameter = new AlwaysChangingParameter("oldvalue_ID", TypeCode.String, "p_OldValueInsert");
                view.InsertParameters.Add(insertParameter);
                updateParameter = new AlwaysChangingParameter("oldvalue_ID", TypeCode.String, "p_OldValueUpdate");
                view.UpdateParameters.Add(updateParameter);
                deleteParameter = new AlwaysChangingParameter("oldvalue_ID", TypeCode.String, "p_OldValueDelete");
                view.DeleteParameters.Add(deleteParameter);
                break;

            case InitViewType.MatchParamsToValues:
                insertParameter = new AlwaysChangingParameter("ID", TypeCode.String, "p_ValueInsert");
                view.InsertParameters.Add(insertParameter);
                updateParameter = new AlwaysChangingParameter("ID", TypeCode.String, "p_ValueUpdate");
                view.UpdateParameters.Add(updateParameter);
                deleteParameter = new AlwaysChangingParameter("ID", TypeCode.String, "p_ValueDelete");
                view.DeleteParameters.Add(deleteParameter);
                break;

            case InitViewType.DontMatchParams:
                insertParameter = new AlwaysChangingParameter("OtherValue", TypeCode.String, "p_OtherValueInsert");
                view.InsertParameters.Add(insertParameter);
                updateParameter = new AlwaysChangingParameter("OtherValue", TypeCode.String, "p_OtherValueUpdate");
                view.UpdateParameters.Add(updateParameter);
                deleteParameter = new AlwaysChangingParameter("OtherValue", TypeCode.String, "p_OtherValueDelete");
                view.DeleteParameters.Add(deleteParameter);
                break;
            }

            view.SelectParameters.ParametersChanged += new EventHandler(SelectParameters_ParametersChanged);
            view.InsertParameters.ParametersChanged += new EventHandler(InsertParameters_ParametersChanged);
            view.UpdateParameters.ParametersChanged += new EventHandler(UpdateParameters_ParametersChanged);
            view.DeleteParameters.ParametersChanged += new EventHandler(DeleteParameters_ParametersChanged);

            keys = new Hashtable();
            keys.Add("ID", "k_1001");

            old_value = new Hashtable();
            old_value.Add("ID", "ov_1001");

            new_value = new Hashtable();
            new_value.Add("ID", "n_1001");

            view.DataSourceViewChanged += new EventHandler(view_DataSourceViewChanged);

            view.Selecting += new SqlDataSourceSelectingEventHandler(view_Selecting);
            view.Inserting += new SqlDataSourceCommandEventHandler(view_Inserting);
            view.Updating  += new SqlDataSourceCommandEventHandler(view_Updating);
            view.Deleting  += new SqlDataSourceCommandEventHandler(view_Deleting);
            return(view);
        }