Database context and Return Dynamic Result Set in ASP.NET MVC

前端 未结 8 1694
说谎
说谎 2020-12-14 13:42

In MVC 4 and EF 5 i want to run dynamic query.

var returndata = Context.Database.SqlQuery(Type, strsql, null);

i don\'t know, how many fie

8条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-14 13:53

    This method loads data from SQL select (with parameters) to the list of rows, where each row is the dictionary of columns (the key is the column name).

    private static List> LoadData(string sqlSelect, params object[] sqlParameters)
    {
        var table = new List>();
        using (var ctx = new DbEntities())
        {
            ctx.Database.Connection.Open();
            using (var cmd = ctx.Database.Connection.CreateCommand())
            {
                cmd.CommandText = sqlSelect;
                foreach (var param in sqlParameters)
                    cmd.Parameters.Add(param);
                using (var reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var row = new Dictionary();
                        for (int i = 0; i < reader.FieldCount; i++)
                            row[reader.GetName(i)] = reader[i];
                        table.Add(row);
                    }
                }
            }
        }
        return table;
    }
    

提交回复
热议问题