I don't know if you are still looking for a solution here, but here is how I set data source of Query Layers programmatically: ISqlWorkspace sw = featureWS as ISqlWorkspace; string query = string.Format("SELECT * FROM {0}", tableName); IQueryDescription queryDesc = sw.GetQueryDescription(query); queryDesc.OIDFields = tableID; string queryClassName = ""; //get a unique name for this Query Class sw.CheckDatasetName(tableName, queryDesc, out queryClassName); IFeatureClass featureClass = sw.OpenQueryClass(queryClassName, queryDesc) as IFeatureClass; featureLayer.FeatureClass = featureClass; Hope this helps
... View more