private IDataSourceFieldSchema[] GetFieldSchemas() { if (this._fieldSchemas == null) { IDataSourceViewSchema schema = null; DesignerDataSourceView designerView = this._controlDesigner.DesignerView; if (designerView != null) { try { schema = designerView.Schema; } catch (Exception exception) { IComponentDesignerDebugService service = (IComponentDesignerDebugService)base.ServiceProvider.GetService(typeof(IComponentDesignerDebugService)); if (service != null) { service.Fail(System.Design.SR.GetString("DataSource_DebugService_FailedCall", new object[] { "DesignerDataSourceView.Schema", exception.Message })); } } } if (schema != null) { this._fieldSchemas = schema.GetFields(); } } return(this._fieldSchemas); }
public override string GetDesignTimeHtml() { IEnumerable selectedDataSource = null; bool templatesExist = this.TemplatesExist; Repeater viewControl = (Repeater)base.ViewControl; if (templatesExist) { DesignerDataSourceView designerView = this.DesignerView; IEnumerable designTimeDataSource = null; bool flag2 = false; string dataSourceID = string.Empty; if (designerView == null) { selectedDataSource = this.GetResolvedSelectedDataSource(); designTimeDataSource = this.GetDesignTimeDataSource(selectedDataSource, 5); } else { try { bool flag3; designTimeDataSource = designerView.GetDesignTimeData(5, out flag3); } catch (Exception exception) { if (base.Component.Site != null) { IComponentDesignerDebugService service = (IComponentDesignerDebugService)base.Component.Site.GetService(typeof(IComponentDesignerDebugService)); if (service != null) { service.Fail(System.Design.SR.GetString("DataSource_DebugService_FailedCall", new object[] { "DesignerDataSourceView.GetDesignTimeData", exception.Message })); } } } } try { viewControl.DataSource = designTimeDataSource; dataSourceID = viewControl.DataSourceID; viewControl.DataSourceID = string.Empty; flag2 = true; viewControl.DataBind(); return(base.GetDesignTimeHtml()); } catch (Exception exception2) { return(this.GetErrorDesignTimeHtml(exception2)); } finally { viewControl.DataSource = null; if (flag2) { viewControl.DataSourceID = dataSourceID; } } } return(this.GetEmptyDesignTimeHtml()); }
public override DesignerDataSourceView GetView(string viewName) { if (string.IsNullOrEmpty(viewName)) { viewName = "DefaultView"; } if (!string.Equals(viewName, "DefaultView", StringComparison.OrdinalIgnoreCase)) { return(null); } if (this._view == null) { this._view = this.CreateView(viewName); } return(this._view); }
protected virtual IEnumerable GetDesignTimeDataSource() { bool flag; IEnumerable designTimeData = null; DesignerDataSourceView designerView = this.DesignerView; if (designerView != null) { try { designTimeData = designerView.GetDesignTimeData(this.SampleRowCount, out flag); } catch (Exception exception) { if (base.Component.Site != null) { IComponentDesignerDebugService service = (IComponentDesignerDebugService)base.Component.Site.GetService(typeof(IComponentDesignerDebugService)); if (service != null) { service.Fail(System.Design.SR.GetString("DataSource_DebugService_FailedCall", new object[] { "DesignerDataSourceView.GetDesignTimeData", exception.Message })); } } } } else { IEnumerable resolvedSelectedDataSource = ((IDataSourceProvider)this).GetResolvedSelectedDataSource(); if (resolvedSelectedDataSource != null) { designTimeData = DesignTimeData.GetDesignTimeDataSource(DesignTimeData.CreateSampleDataTable(resolvedSelectedDataSource), this.SampleRowCount); flag = true; } } if (designTimeData != null) { ICollection is2 = designTimeData as ICollection; if ((is2 == null) || (is2.Count > 0)) { return(designTimeData); } } flag = true; return(this.GetSampleDataSource()); }
public override DesignerDataSourceView GetView(string viewName) { if (string.IsNullOrEmpty(viewName)) { viewName = "DefaultView"; } if (viewName != "DefaultView") { return(null); } if (_view == null) { _view = new ObjectDesignerDataSourceView(this, viewName); } return(_view); }
private IDataSourceViewSchema GetDataSourceSchema() { DesignerDataSourceView designerView = base.DesignerView; if (designerView != null) { try { return(designerView.Schema); } catch (Exception exception) { IComponentDesignerDebugService service = (IComponentDesignerDebugService)base.Component.Site.GetService(typeof(IComponentDesignerDebugService)); if (service != null) { service.Fail(System.Design.SR.GetString("DataSource_DebugService_FailedCall", new object[] { "DesignerDataSourceView.Schema", exception.Message })); } } } return(null); }
private IDataSourceViewSchema GetDataSourceSchema() { DesignerDataSourceView designerView = base.DesignerView; if (designerView != null) { try { return(designerView.Schema); } catch (Exception) { IComponentDesignerDebugService componentDesignerDebugService = (IComponentDesignerDebugService)base.Component.Site.GetService(typeof(IComponentDesignerDebugService)); if (componentDesignerDebugService != null) { componentDesignerDebugService.Fail("DataSource_DebugService_FailedCall"); } } } return(null); }
public override string GetDesignTimeHtml() { bool templatesExist = this.TemplatesExist; if (templatesExist) { IEnumerable designTimeDataSource; DataList viewControl = (DataList)base.ViewControl; bool dummyDataSource = false; DesignerDataSourceView designerView = base.DesignerView; if (designerView == null) { designTimeDataSource = base.GetDesignTimeDataSource(5, out dummyDataSource); } else { try { designTimeDataSource = designerView.GetDesignTimeData(5, out dummyDataSource); } catch (Exception exception) { if (base.Component.Site != null) { IComponentDesignerDebugService service = (IComponentDesignerDebugService)base.Component.Site.GetService(typeof(IComponentDesignerDebugService)); if (service != null) { service.Fail(System.Design.SR.GetString("DataSource_DebugService_FailedCall", new object[] { "DesignerDataSourceView.GetDesignTimeData", exception.Message })); } } designTimeDataSource = null; } } bool flag3 = false; string dataKeyField = null; bool flag4 = false; string dataSourceID = null; try { viewControl.DataSource = designTimeDataSource; dataKeyField = viewControl.DataKeyField; if (dataKeyField.Length != 0) { flag3 = true; viewControl.DataKeyField = string.Empty; } dataSourceID = viewControl.DataSourceID; viewControl.DataSourceID = string.Empty; flag4 = true; viewControl.DataBind(); return(base.GetDesignTimeHtml()); } catch (Exception exception2) { return(this.GetErrorDesignTimeHtml(exception2)); } finally { viewControl.DataSource = null; if (flag3) { viewControl.DataKeyField = dataKeyField; } if (flag4) { viewControl.DataSourceID = dataSourceID; } } } return(this.GetEmptyDesignTimeHtml()); }
public override TypeConverter.StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { object[] objArray1 = null; if (context != null) { IComponent component1 = context.Instance as IComponent; if (component1 != null) { ISite site1 = component1.Site; if (site1 != null) { IDesignerHost host1 = (IDesignerHost)site1.GetService(typeof(IDesignerHost)); if (host1 != null) { IDesigner designer1 = host1.GetDesigner(component1); DesignerDataSourceView view1 = this.GetView(designer1); if (view1 != null) { IDataSourceViewSchema schema1 = null; try { schema1 = view1.Schema; } catch (Exception exception1) { IComponentDesignerDebugService service1 = (IComponentDesignerDebugService)site1.GetService(typeof(IComponentDesignerDebugService)); if (service1 != null) { service1.Fail("DataSource DebugService FailedCall\r\n" + exception1.ToString()); } } if (schema1 != null) { IDataSourceFieldSchema[] schemaArray1 = schema1.GetFields(); if (schemaArray1 != null) { objArray1 = new object[schemaArray1.Length]; for (int num1 = 0; num1 < schemaArray1.Length; num1++) { objArray1[num1] = schemaArray1[num1].Name; } } } } if (((objArray1 == null) && (designer1 != null)) && (designer1 is IDataSourceProvider)) { IDataSourceProvider provider1 = designer1 as IDataSourceProvider; IEnumerable enumerable1 = null; if (provider1 != null) { enumerable1 = provider1.GetResolvedSelectedDataSource(); } if (enumerable1 != null) { PropertyDescriptorCollection collection1 = DesignTimeData.GetDataFields(enumerable1); if (collection1 != null) { ArrayList list1 = new ArrayList(); foreach (PropertyDescriptor descriptor1 in collection1) { list1.Add(descriptor1.Name); } objArray1 = list1.ToArray(); } } } } } } } return(new TypeConverter.StandardValuesCollection(objArray1)); }
public override string GetDesignTimeHtml() { int minimumRows = 5; DataGrid viewControl = (DataGrid)base.ViewControl; if (viewControl.AllowPaging && (viewControl.PageSize != 0)) { minimumRows = Math.Min(viewControl.PageSize, 100) + 1; } bool dummyDataSource = false; IEnumerable designTimeDataSource = null; bool flag2 = false; bool flag3 = false; bool flag4 = false; DesignerDataSourceView designerView = base.DesignerView; bool autoGenerateColumns = viewControl.AutoGenerateColumns; string dataKeyField = string.Empty; string dataSourceID = string.Empty; string designTimeHtml = null; if (designerView == null) { designTimeDataSource = base.GetDesignTimeDataSource(minimumRows, out dummyDataSource); } else { try { designTimeDataSource = designerView.GetDesignTimeData(minimumRows, out dummyDataSource); } catch (Exception exception) { if (base.Component.Site != null) { IComponentDesignerDebugService service = (IComponentDesignerDebugService)base.Component.Site.GetService(typeof(IComponentDesignerDebugService)); if (service != null) { service.Fail(System.Design.SR.GetString("DataSource_DebugService_FailedCall", new object[] { "DesignerDataSourceView.GetDesignTimeData", exception.Message })); } } } if (designTimeDataSource == null) { return(this.GetEmptyDesignTimeHtml()); } } if (!autoGenerateColumns && (viewControl.Columns.Count == 0)) { flag2 = true; viewControl.AutoGenerateColumns = true; } if (dummyDataSource) { dataKeyField = viewControl.DataKeyField; if (dataKeyField.Length != 0) { flag3 = true; viewControl.DataKeyField = string.Empty; } } try { viewControl.DataSource = designTimeDataSource; dataSourceID = viewControl.DataSourceID; viewControl.DataSourceID = string.Empty; flag4 = true; viewControl.DataBind(); designTimeHtml = base.GetDesignTimeHtml(); } catch (Exception exception2) { designTimeHtml = this.GetErrorDesignTimeHtml(exception2); } finally { viewControl.DataSource = null; if (flag2) { viewControl.AutoGenerateColumns = false; } if (flag3) { viewControl.DataKeyField = dataKeyField; } if (flag4) { viewControl.DataSourceID = dataSourceID; } } return(designTimeHtml); }
public StringCollection GetStandardValues(Component component) { StringCollection fields = new StringCollection(); if (component != null) { ISite site1 = component.Site; if (site1 != null) { IDesignerHost host1 = (IDesignerHost)site1.GetService(typeof(IDesignerHost)); if (host1 != null) { IDesigner designer1 = host1.GetDesigner(component); DesignerDataSourceView view1 = ((DataBoundControlDesigner)designer1).DesignerView; if (view1 != null) { IDataSourceViewSchema schema1 = null; try { schema1 = view1.Schema; } catch (Exception exception1) { IComponentDesignerDebugService service1 = (IComponentDesignerDebugService)site1.GetService(typeof(IComponentDesignerDebugService)); if (service1 != null) { service1.Fail("DataSource DebugService FailedCall\r\n" + exception1.ToString()); } } if (schema1 != null) { IDataSourceFieldSchema[] schemaArray1 = schema1.GetFields(); if (schemaArray1 != null) { for (int num1 = 0; num1 < schemaArray1.Length; num1++) { fields.Add(schemaArray1[num1].Name); } } } } if (((fields.Count == 0) && (designer1 != null)) && (designer1 is IDataSourceProvider)) { IDataSourceProvider provider1 = designer1 as IDataSourceProvider; IEnumerable enumerable1 = null; if (provider1 != null) { enumerable1 = provider1.GetResolvedSelectedDataSource(); } if (enumerable1 != null) { PropertyDescriptorCollection collection1 = DesignTimeData.GetDataFields(enumerable1); if (collection1 != null) { foreach (PropertyDescriptor descriptor1 in collection1) { fields.Add(descriptor1.Name); } } } } } } } return(fields); }
private string[] GetControlDataFieldNames() { if (this._dataFields == null) { ITypeDescriptorContext context = this.editor.Context; IDataSourceFieldSchema[] fields = null; IDataSourceViewSchema dataSourceViewSchema = null; if ((context != null) && (context.Instance != null)) { System.Web.UI.Control instance = context.Instance as System.Web.UI.Control; if (instance != null) { ISite site = instance.Site; if (site != null) { IDesignerHost host = (IDesignerHost)site.GetService(typeof(IDesignerHost)); if (host != null) { DataBoundControlDesigner designer = host.GetDesigner(instance) as DataBoundControlDesigner; if (designer != null) { DesignerDataSourceView designerView = designer.DesignerView; if (designerView != null) { try { dataSourceViewSchema = designerView.Schema; } catch (Exception exception) { IComponentDesignerDebugService service = (IComponentDesignerDebugService)site.GetService(typeof(IComponentDesignerDebugService)); if (service != null) { service.Fail(System.Design.SR.GetString("DataSource_DebugService_FailedCall", new object[] { "DesignerDataSourceView.Schema", exception.Message })); } } } } } } } else { IDataSourceViewSchemaAccessor accessor = context.Instance as IDataSourceViewSchemaAccessor; if (accessor != null) { dataSourceViewSchema = accessor.DataSourceViewSchema as IDataSourceViewSchema; } } } if (dataSourceViewSchema != null) { fields = dataSourceViewSchema.GetFields(); if (fields != null) { int length = fields.Length; this._dataFields = new string[length]; for (int i = 0; i < length; i++) { this._dataFields[i] = fields[i].Name; } } } } return(this._dataFields); }
private void RegisterData(WebReport webreport, Report report, IServiceProvider provider) { string[] dataSources = webreport.ReportDataSources.Split(new char[] { ';' }); foreach (string dataSource in dataSources) { IDataSource ds = FindControlRecursive(webreport.Page, dataSource) as IDataSource; if (ds == null) { continue; } string dataName = (ds as Control).ID; // at design time, use design time data view if (provider != null) { if (ds is AccessDataSource) { // for MS Access data source, try to convert relative DataFile path. // This is needed to avoid the exception when access the database in the design time. AccessDataSource accessDs = ds as AccessDataSource; string saveDataFile = accessDs.DataFile; try { accessDs.DataFile = MapPath(provider, accessDs.DataFile); webreport.RegisterDataAsp(report, accessDs, accessDs.ID); } finally { accessDs.DataFile = saveDataFile; } } else { object[] attrs = ds.GetType().GetCustomAttributes(typeof(DesignerAttribute), false); if (attrs != null && attrs.Length == 1) { DesignerAttribute designerAttr = attrs[0] as DesignerAttribute; DataSourceDesigner dsDesigner = Activator.CreateInstance(Type.GetType(designerAttr.DesignerTypeName)) as DataSourceDesigner; try { dsDesigner.Initialize(ds as IComponent); dsDesigner.RefreshSchema(false); DesignerDataSourceView view = dsDesigner.GetView(""); bool isSampleData = false; IEnumerable data = view.GetDesignTimeData(10, out isSampleData); webreport.RegisterDataAsp(report, data, dataName); } finally { dsDesigner.Dispose(); } } } } else { webreport.RegisterDataAsp(report, ds, dataName); } } }