SQL查询中的未知返回类型?

时间:2015-04-22 15:36:32

标签: c# sql-server wpf entity-framework

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

enter image description here

  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();
    }

因此,根据从UI传入的ArticleType作为参数,返回表中定义的数据透视查询中的几个结果集之一。

我目前正在尝试为每个可能的结果集编写一个类,例如

public class AwardsChartParameters
{
    public string operator_int_name { get; set; }
    public int countAll { get; set; }
}

表中的这个特定查询将返回一个字符串&amp;列表。因此,我可以将结果提取到我的List<AwardsChartParameters>&amp;在我的UI中绘制它们。这样,随着表的增长,我将需要一个类来保存表中所有可能的结果集。

是否有任何方法可以创建在运行时构建的动态列表或类,具体取决于查询的结果集。例如,用户的第一个查询可以返回一个字符串列表,第二个查询返回一个字符串列表&amp;整数?

我正在使用实体框架,因此将实体映射到代码的其他部分中的sql Server数据库中的具体类,但是使用来自这样的表中的查询的结果集,我具有对结果结构的具体依赖性。我开始闻到糟糕的代码...

0 个答案:

没有答案