Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Black-millenium
24 / 24 / 8
Регистрация: 26.11.2011
Сообщений: 157
1

Создание таблиц в БД с использованием LINQ

26.11.2011, 23:32. Просмотров 2142. Ответов 1
Метки нет (Все метки)

Доброго времени суток ещё раз. Подскажите пожалуйста вот такое:
Как в базе данных создать таблицу, а потом создать в ней нужные поля, не используя нативные SQL запросы? Т.е. только с помощью LINQ. К базе данных подключаюсь так:


C#
1
DataContext db = new DataContext(@"Data Source=PANDEMONY\SQLEXPRESS; Initial Catalog=Univer; Integrated Security=True");
Как создать нужную мне таблицу TableName а потом разместить в ней нужные мне поля?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2011, 23:32
Ответы с готовыми решениями:

Создание Chart с использованием Linq To Sql
подскажите где/ в чем ошибка: сделал классы Linq To Sql "замапил" таблицу из...

Объединение таблиц БД посредством LINQ
В базе данных хранятся следующие таблицы: //Заранее извиняюсь за такое...

Запрос с использованием LINQ в С#
Доброго времени суток, уважаемые знатоки! При работе в С# возникла следующая...

Linq to Sql. Удаление связанных таблиц. Внешний ключ
Здравствуйте! Создал пару таблиц Person и Address в MVS 2010, заполнил и...

Linq или не Linq. Linq медленней стандартных методов?
Есть у нас два массива, нужно найти совпадения в первом из второго. Два...

1
SNOOPYKZ
102 / 102 / 13
Регистрация: 22.10.2011
Сообщений: 328
27.11.2011, 08:34 2
например так
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class  CreateTableDemo
    {
        [Table(Name  =   " User " )]
         class  User
        {
            [Column]
             public   int  ID;
 
            [Column]
             public   string  Name;
 
        }
 
         static   void  Main()
        {
            var constr  =   @" Data Source=NOTEBOOK\SQLEXPRESS;Initial Catalog=DemoDataContext;Integrated Security=True " ;
            var context  =   new  DataContext(constr) { Log  =  Console.Out };
            var metaTable  =  context.Mapping.GetTable( typeof (User));
            Debug.Assert(metaTable  !=   null );
 
            var typeName  =   " System.Data.Linq.SqlClient.SqlBuilder " ;
            var type  =   typeof (DataContext).Assembly.GetType(typeName);
            var bf  =  BindingFlags.Static  |  BindingFlags.NonPublic  |  BindingFlags.InvokeMethod;
            var sql  =  type.InvokeMember( " GetCreateTableCommand " , bf,  null ,  null ,  new [] { metaTable });
            Console.WriteLine(sql);
             // Excute SQL Command
        }
    }
или так
C#
1
2
3
4
5
6
7
8
9
10
using (var tempDc = new DmsDataContext())
    {
        var metaTable = tempDc.Mapping.GetTable(linqTableClass);
        var typeName = "System.Data.Linq.SqlClient.SqlBuilder";
        var type = typeof(DataContext).Assembly.GetType(typeName);
        var bf = BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.InvokeMethod;
        var sql = type.InvokeMember("GetCreateTableCommand", bf, null, null, new[] { metaTable });
        var sqlAsString = sql.ToString();
        tempDc.ExecuteCommand(sqlAsString);
    }
а еще можно почитать это How to: Dynamically Create a Database (LINQ to SQL)
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2011, 08:34

Распараллеливание вызовов SendAsync (возможно с использованием LINQ)
Несколько дней ищу ответ на вопрос : как хорошо распределить вызовы ...

Заполнение DataGridview с использованием класса LINQ to SQL
Здравствуйте, есть проблема, не могу заполнить DataGridview с помощью LINQ без...

Добавление объекта в базу данных с использованием Linq
Доброго времени суток. public override void Add(UserEntity entity) ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru