Я новичок в C#, linq и EF4, поэтому, пожалуйста, несите меня. Я уверен, что это действительно просто, но не видя этого.SELECT INTO с EF4
Хранимая процедура, которую я заменяю, выполняет SELECT INTO, чтобы запросить кучу данных, выполнить некоторые простые преобразования и затем выводить результаты в другую таблицу. Затем этот набор данных возвращается для локальной обработки в коде.
У меня есть запрос, который переносит мои данные в анонимный тип и обрабатывает все преобразования. Но как я могу отправить эти данные в таблицу результатов?
Первоначально я думал об использовании типа сущности для хранения моих первоначальных результатов. Но у меня есть дополнительные поля, которые мне нужны для локальной обработки, которые не будут храниться в таблице результатов.
Благодаря любым мастерам EF, которые хотят взломать это для меня!
редактировать: Вот некоторые псевдо код, основанный на помощь Morteza, но не похоже, чтобы переместить данные -
var ctx = new ReportEntities();
var query = from s in ctx.Source
select new
{
s.SourceID,
s.OtherStuff
};
query.ToList().Select(q => new Report()
{
SourceID = q.SourceID,
OtherStuff = q.OtherStuff
});
ctx.SaveChanges();
Я думал об этом, и это будет достаточно легко. Вещь ... Я пытаюсь научиться делать что-то «новым» способом. Таким образом, я отказываюсь от хранимых процедур и стараюсь сохранить их в коде. Неужели я стараюсь сделать это так? –
Ну, так как вы сказали, что «он выводит мои данные в анонимный тип», я понял, что у вас, вероятно, нет объекта EntityObject, сопоставленного с этой таблицей результатов, но если вы это сделаете, то вы можете наверняка заполнить его результатами и сохранить его в БД без использования хранимой процедуры. У вас есть такая организация в вашей модели? –
Да, я проецируюсь на анонимный тип, потому что я возвращаю лишние поля не в таблицу результатов. Мне нужны дополнительные поля для некоторой локальной обработки позже в коде. И да, таблица результатов находится в моем EDM. –