Ejemplo n.º 1
0
        internal override void CreateDataSchema(IntegrationContext context)
        {
            DataTable dt = context.State["datatable"] as DataTable;

            if (dt == null)
            {
                throw new ArgumentException("context.State[\"datatable\"]");
            }
            //if (dt.Rows.Count == 0)
            //    throw new ArgumentException("rows cannot be empty.");

            DataSchema dataSchema = new DataSchema();

            dataSchema.TransferMode = DataFixMode.Skip;
            List <DataSchemaField> fields = new List <DataSchemaField>();

            for (int i = 0; i < dt.Columns.Count; i++)
            {
                DataSchemaField field = new DataSchemaField();
                field.Name = field.Source = field.Destination = dt.Columns[i].ColumnName;
                field.Type = dt.Columns[i].DataType.ToString();
                if (!dt.Columns[i].AllowDBNull)
                {
                    field.SetAnyAttributeValue("required", "true");
                }
                field.Index = dt.Columns[i].Ordinal;

                fields.Add(field);
            }
            dataSchema.Fields = fields.ToArray();
            context.Schema    = dataSchema;
        }
Ejemplo n.º 2
0
 public bool SetAnyAttributeValue(string name, string value)
 {
     if (string.IsNullOrEmpty(name) || string.IsNullOrEmpty(value))
     {
         return(false);
     }
     AnyAttr = DataSchemaField.SetAnyAttributeValue(AnyAttr, name, value);
     return(true);
 }