EF Core LINQ Запрос на таблицу с именем таблицы в качестве переменной? - PullRequest
0 голосов
/ 14 марта 2020

Чтобы избежать дублирования одного и того же метода запроса кода для нескольких таблиц, я создаю список строк для каждого имени таблицы, а затем в foreach l oop Я хочу выполнить один и тот же запрос для каждой таблицы. Я не уверен, как использовать переменную имени таблицы в запросе. Все, на что я смотрел так далеко, от других вопросов по топикам c dynamici c LINQ выглядит слишком много кода для того, что я бы ожидал, чтобы было простым решением для исправления ...

            // Create a list and add the names of each DB table that needs to be checked
            // by EF Core to see if any data exists, if so then each table contents will
            // be loaded into the in memory database.
            List<string> dbTables = new List<string>
            {
                "Image",
                "Sound"
            };

            // Bad example - I dont want to use hard coded table name reference
            //if (!_context.Image.Any())
            //{
            //    // The table is empty
            //}

            foreach (var table in dbTables)
            {
                // NOT WORKING! DbContext does not contain a definition for ... blah blah blah
                if (!_context.table.Any())
                {
                    // The table is empty
                }
            }
...