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); }
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; }
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); }