简体   繁体   English

Linq动态选择列和表

[英]Linq dynamic select column and table

hello how I do dynamic select column query ? 你好,我如何动态选择列查询?

example

 CrewEntities _DbEntities = new CrewEntities(); // I'm using object context



  public class CrewItem
        {
            public string Name { get; set; }
            public string LastName { get; set; }
        }

//I want to list only name column //我只想列出姓名栏

var NameList = GetDynamicColumn("Name"); 

or 要么

I want to list only LastName column 

var LastNameList = GetDynamicColumn("Name");



publict List<CrewItem> GetDynamicColumn(string Columm)
{
   var query = from p in _DbEntities.t_Crew
               select p.??? ;
}

and How do, I do dynamic select table query? 以及如何进行动态选择表查询?

example

my sql table >> t_Crew , t_Person 我的SQL表>> t_Crew,t_Person

var crewTable = GetDynamicTable("t_Crew");
var personTable = GetDynamicTable("t_Person");


    publict List<CrewItem> GetDynamicTable(string tableName)
    {
       var query = from p in _DbEntities.???
                   select p;
    }

thank you 谢谢

For the second part of your question, If you are using Linq2SQL fro getting dynamic table data you can use this query 对于问题的第二部分,如果您正在使用Linq2SQL来获取动态表数据,则可以使用此查询

public IQueryable<TEntity> GetDynamicTable<TEntity>()
{
   return  _DbEntities.GetTable<TEntity>().Select(i => i);
}

or for having filter (where) you can write: 或具有过滤器(在哪里),您可以编写:

public IQueryable<TEntity> GetDynamicTable<TEntity>(Expression<Func<TEntity, bool>> expression)
{
   return  _DbEntities.GetTable<TEntity>().Select(i => i).Where(expression).AsQueryable();
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM