如何在Linq中动态传递参数? [英] How cani pass the parameter dynamically in Linq?

查看:104
本文介绍了如何在Linq中动态传递参数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

private List<string> GetAllFieldValues(string p)
{
    List<string> field_values = new List<string>();
    string connectionString = ConfigurationManager.ConnectionStrings["SchoolContext"].ConnectionString;
    using (SqlConnection con = new SqlConnection(connectionString))
    {
        SqlCommand cmd = new SqlCommand();
        con.Open();
        cmd.CommandText = "SELECT " + p + " from tbl_student where institutionid=" + Convert.ToInt32(Session["institutionId"].ToString());
        cmd.Connection = con;
        SqlDataReader dr = cmd.ExecuteReader();
        if (dr.HasRows)
        {
            while (dr.Read())
            {
                if (p == "dateofadmission" || p == "dateofbirth")
                    field_values.Add(Convert.ToDateTime(dr[0].ToString()).ToShortDateString());
                else
                    field_values.Add(dr[0].ToString());
            }
        }
        else
        {

        }
    }
    return field_values;
}





这是我的ADO.NET代码如何将这个转换为linq我有一个想法改变linq但我不知道动态传递参数。



this is my ADO.NET code how can i convert this one to linq i have an idea to change linq but i don't know pass the parameter dynamically.

推荐答案

string colName=p;
field_values = db.table1.Select(d=>new {d.colName}).Distinct().ToList();


这篇关于如何在Linq中动态传递参数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆