Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 来自SQL查询的未知返回类型?_C#_Sql Server_Wpf_Entity Framework - Fatal编程技术网

C# 来自SQL查询的未知返回类型?

C# 来自SQL查询的未知返回类型?,c#,sql-server,wpf,entity-framework,C#,Sql Server,Wpf,Entity Framework,我有一个WPF应用程序,它具有从数据库表中提取SQL查询的方法: public List<AwardsChartParameters> GetAwardsChartParameters(string country, string articleType) { var query = (from a in _Context.tbQueryTable where a.Art

我有一个WPF应用程序,它具有从数据库表中提取SQL查询的方法:

  public List<AwardsChartParameters> GetAwardsChartParameters(string country, string articleType)
    {                    
         var query = (from a in _Context.tbQueryTable
                      where a.ArticleType == ArticleType
                      select a.ColSelection + " " + a.FromTable + " " + a.whereclause + " " + a.orderBY);

         string queryResult = query.FirstOrDefault().ToString();

         return ((IObjectContextAdapter)_Context).ObjectContext.ExecuteStoreQuery<AwardsChartParameters>(queryResult).ToList();
    }

表中的这个特定查询将返回一个string&int列表,因此我可以将结果拉入我的
列表
&在我的UI中绘制它们。这样,随着表的增长,我需要一个类来保存表中所有可能的结果集

是否有任何方法可以创建动态列表或类,该列表或类在运行时根据查询的结果集生成。例如,用户的第一个查询可能返回字符串列表,第二个查询返回字符串列表&整数


因此,在代码的其他部分中,我使用实体框架将实体映射到sql Server db中的具体类,但是使用类似于下面的表中查询的结果集,我对结果结构有着具体的依赖性&我开始嗅到不好的代码……

如果您将查询本身移动到一个带有几个参数的存储过程中,而不是通过编程生成查询,我觉得它将消除代码气味。假设这是可能的(您可能需要在SP中使用一些动态SQL),它将逻辑封装在一个地方,EF甚至会为您生成所需的类:
public class AwardsChartParameters
{
    public string operator_int_name { get; set; }
    public int countAll { get; set; }
}