private List <DynamicQueryable.DynamicProperty> GetColumnsProperties(List <string> columnsNames) { List <DynamicQueryable.DynamicProperty> columnsList = new List <DynamicQueryable.DynamicProperty>(); string uri = string.Format("{0}EntityMetadata(PartitionKey='{1}', RowKey='{1}Item')", _Account.TableEndpoint.AbsoluteUri, EntitySet); WebRequest request = HttpWebRequest.Create(uri); // Sign request for Azure authentication _Account.Credentials.SignRequestLite((HttpWebRequest)request); try { WebResponse response = request.GetResponse(); XElement feed = XElement.Load(response.GetResponseStream()); foreach (var e in feed.Elements(_contentXName).Elements(_propertiesXName)) { if (e != null) { foreach (string currentName in columnsNames) { string columnType = e.Element(_nsd + currentName.ToLower()).Value; Type currentType = Type.GetType(columnType); DynamicQueryable.DynamicProperty currentColumn = new DynamicQueryable.DynamicProperty(currentName, currentType); columnsList.Add(currentColumn); } } } } catch (WebException ex) { HttpWebResponse response = ex.Response as HttpWebResponse; _HttpContext.Response.StatusCode = (int)response.StatusCode; _HttpContext.Response.End(); } return(columnsList); }
private List<DynamicQueryable.DynamicProperty> GetColumnsProperties(List<string> columnsNames) { List<DynamicQueryable.DynamicProperty> columnsList = new List<DynamicQueryable.DynamicProperty>(); string uri = string.Format("{0}EntityMetadata(PartitionKey='{1}', RowKey='{1}Item')", _Account.TableEndpoint.AbsoluteUri, EntitySet); WebRequest request = HttpWebRequest.Create(uri); // Sign request for Azure authentication _Account.Credentials.SignRequestLite((HttpWebRequest)request); try { WebResponse response = request.GetResponse(); XElement feed = XElement.Load(response.GetResponseStream()); foreach (var e in feed.Elements(_contentXName).Elements(_propertiesXName)) { if (e != null) { foreach (string currentName in columnsNames) { string columnType = e.Element(_nsd + currentName.ToLower()).Value; Type currentType = Type.GetType(columnType); DynamicQueryable.DynamicProperty currentColumn = new DynamicQueryable.DynamicProperty(currentName, currentType); columnsList.Add(currentColumn); } } } } catch (WebException ex) { HttpWebResponse response = ex.Response as HttpWebResponse; _HttpContext.Response.StatusCode = (int)response.StatusCode; _HttpContext.Response.End(); } return columnsList; }