Exemplo n.º 1
0
        public override async Task <object> PerformDataOperation <T>(object query)
        {
            BlazorAdaptor      blazorAdaptor = this;
            IEnumerable        DataSource    = (IEnumerable)blazorAdaptor.DataManager.Json;
            DataManagerRequest queries       = (DataManagerRequest)CellBaseUtils.ChangeType(query, typeof(DataManagerRequest));
            DataResult         DataObject;

            if (!blazorAdaptor.RunSyncOnce)
            {
                return(await Task.Run <object>((Func <object>)(() =>
                {
                    DataObject = this.DataOperationInvoke <T>(DataSource, queries);
                    return !queries.RequiresCounts ? (object)DataObject.Result : (object)DataObject;
                })));
            }
            blazorAdaptor.RunSyncOnce = false;
            DataObject = blazorAdaptor.DataOperationInvoke <T>(DataSource, queries);
            return(await Task.FromResult <object>(queries.RequiresCounts?(object)DataObject : (object)DataObject.Result));
        }
Exemplo n.º 2
0
 public override object ProcessQuery(DataManagerRequest queries) => CellBaseUtils.ChangeType((object)queries, typeof(DataManagerRequest));
Exemplo n.º 3
0
        public async Task <string> BaseRemove(string baseData, string keyField, string key)
        {
            object data;

            if (GenericType != null)
            {
                PropertyInfo propertyInfo = GenericType.GetProperty(keyField);
                if (propertyInfo == null)
                {
                    foreach (PropertyInfo property in GenericType.GetProperties())
                    {
                        foreach (object customAttribute in property.GetCustomAttributes())
                        {
                            if (customAttribute is JsonPropertyAttribute && (customAttribute as JsonPropertyAttribute).PropertyName == keyField)
                            {
                                propertyInfo = property;
                            }
                        }
                    }
                }
                Type propertyType = propertyInfo.PropertyType;
                data = propertyType.Name == "Guid" ? JsonConvert.DeserializeObject <Guid>(baseData) : CellBaseUtils.ChangeType(JsonConvert.DeserializeObject(baseData, DeserializeSettings), propertyType);
            }
            else
            {
                data = JsonConvert.DeserializeObject <object>(baseData, DeserializeSettings);
            }
            return(JsonConvert.SerializeObject(await Remove(data, keyField, key), Formatting.Indented, SerializeSettings));
        }