Это нормально иметь несколько контекста в программе C # ASP.NET? - PullRequest
1 голос
/ 28 мая 2011

Я нахожусь в большом проекте, который использует WebForms, и я хочу использовать LINQ TO SQL, но поскольку в VS будет медленно работать, если я добавлю все к этой модели (более того, я все еще использую стандартный SQL), это нормально для нескольких контекстов?

РЕДАКТИРОВАТЬ: То, что я говорил, это ... у меня есть почти 100 таблиц в базе данных, и я не могу добавить их все в одном контексте, так как я все еще использую raw sql много ... поэтому я, хотя я мог бы отделитьвсе это и создать много контекстов на основе операций.Поэтому, если мне нужно добавить формы оценки, контекст будет взаимодействовать со всей таблицей, связанной с формами оценки.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 28 мая 2011

Если у вас есть логическое разделение в схеме БД, имеет смысл иметь несколько контекстов. Также L2S не мешает вам использовать raw sql, более того, вы можете использовать контекстное соединение и использовать его методы для выполнения sql запросов. Также вы можете сопоставить SP с L2S

Еще одна оговорка, связанная с несколькими контекстами, заключается в том, что вы не сможете легко передавать объекты между контекстами. В вашем случае я бы предпочел использовать EF с POCO (возможно, даже с новым поступившим кодом вначале), используя его, вы сможете передавать объекты из одного контекста в другой, в противном случае вам нужно будет использовать какой-то объект-to -Объектное отображение

UPD: так вы можете использовать LINQ2SQL с сырым sql:

db.ExecuteQuery<Customer>("select * from dbo.Customers where City = {0}", "London");
db.ExecuteCommand("UPDATE Products SET QuantityPerUnit = {0} WHERE ProductID = {1}", "24 boxes", 5);

прочитайте эту статью Метод DataContext.ExecuteCommand

0 голосов
/ 28 мая 2011

Я не уверен, что вы спрашиваете, но обычно вам не нужно более одного контекста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...