Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Из сущности LINQ в коллекцию?? / 20 сообщений из 20, страница 1 из 1
18.10.2010, 22:19
    #36906207
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Мне нужно создать методы WCF для работы с базой! Я конкретно через LINQ to SQL!
Я не могу вернуть результат работы метода. Работать приходиться с сущностью а возвращать надо коллекцию!!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Empoyee employe = new Empoyee();
            employe.ID = ID;
            employe.First_Name = firstName;
            employe.Last_Name = lastName;

            linq = new LINQDataContext();

            linq.Empoyee.InsertOnSubmit(employe);
            linq.SubmitChanges();
            linq.Refresh(RefreshMode.OverwriteCurrentValues);
как  можно результат выше приведенных действий привести к коллекции ???     



Работать эти методы будут но есть ли какой ни будь более корректный способ??
Очень нужна помощь!!! Заранее всем спасибо!!!
...
Рейтинг: 0 / 0
19.10.2010, 09:47
    #36906688
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
lol2Я не могу вернуть результат работы метода.
Какого метода? Какие результаты?

lol2Работать приходиться с сущностью а возвращать надо коллекцию!!
Куда возвращать? Откуда возвращать?

lol2как можно результат выше приведенных действий привести к коллекции ???
Выше приведённых - никак.
...
Рейтинг: 0 / 0
19.10.2010, 16:27
    #36908044
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Я имел ввиду что метод работает над базой конкретно на сервисе и после выполнения нужных действий он возвращает результат! Дальше этот метод вызывается в клиенте !!!
...
Рейтинг: 0 / 0
19.10.2010, 16:37
    #36908066
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Все телепаты форума отошли на покой. Купите себе гадалку на кофе, пусть Вам погадает.
...
Рейтинг: 0 / 0
19.10.2010, 22:42
    #36908710
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Вы вообще знакомы с методами C#?? Для самых умных: методы могут возвращать результат каких то ! действий!
В WCF есть интерфейс где определёны методы обозначены контрактами! И есть класс реализующий эти методы! У меня конкретно эти методы по работе с базой данных (а для умных: методы для работы с базой UPDATE, DELETE, INSERT).
Я интересовался как грамотно реализовать эти методы?? Через LINQ to SQl!
Просто при работе с сущностями мы получаем результат сущность а мне вернуть надо коллекцию!!
И присвоить dataGrid.ItemSource = .. ! Выше приведенный код это один из методов в котором мне как раз и надо как то эту сущность запихнуть в коллекцию и вернуть клиенту !!

И вообще можно те же методы реализовать более грамотно чем у меня?? Вот и УСЁ!!

И чтоб это было понять не нужно быть телепатом достаточно почесать хоть одной извилиной !!!
...
Рейтинг: 0 / 0
20.10.2010, 10:02
    #36908919
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
lol2Вы вообще знакомы с методами C#??
Нет, а что это такое?

lol2Для самых умных: методы могут возвращать результат каких то ! действий!
Для самых тупых: нужно описать то, что Вы хотите получить и откуда. А не приводить левый код, требуя возвращения какой-то сфеерической коллекции.

lol2В WCF есть интерфейс где определёны методы обозначены контрактами! И есть класс реализующий эти методы! У меня конкретно эти методы по работе с базой данных (а для умных: методы для работы с базой UPDATE, DELETE, INSERT).
Уважаемый, причёт тут контракты класса WCF, речь о том, что нихрена не понятно, что Вы хотите получить и откуда.

lol2Я интересовался как грамотно реализовать эти методы?? Через LINQ to SQl!
Это что-ли?

Код: plaintext
var empoyees = context.Empoyees.ToList();

lol2И вообще можно те же методы реализовать более грамотно чем у меня?? Вот и УСЁ!!
Что зачит более грамотно? Хватит ломать головой кирпичную кладь - опишите конкретно задачу, что именно вы хотите сделать (добавить запись, удалить, изменить, выбрать по условию).

lol2И чтоб это было понять не нужно быть телепатом достаточно почесать хоть одной извилиной !!!
Чтобы понять Ваши тугодумные мысли, тут не телепат нужен. А гадалка с кофе.
...
Рейтинг: 0 / 0
20.10.2010, 13:03
    #36909354
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Господин МСУ!

Прошу извинить меня, просто выдался сложный день! С кем не бывает!!
Щас я опишу конкретную проблему!
Я хочу написать распределенное приложение! Так как я новичок в C#.NET у меня появились проблемы!
Моё приложение должно иметь службу WCF которая будет работать с базой, а конкретно содержать методы по удалению, обновлению и добавлению, а так же клиент написанный на WPF который и будет работать с сервисом!
Я могу организовать методы в сервисе но метод должен возвращать результат работы в клиент! И где всё будет фиксироваться в dataGrid!
Дело в том что я даже не могу определиться либо писать на голом WCF или же использовать другую архитектуру REST WCF Data Services (ADO.NET Data Services)!
И при создание методов при возвращение результатов работы с базой клиент некорректно отображает данные в dataGrid!
Вот мне и надо всё сделать грамотно от реализации методов до реализации клиента!!
Вот и вся проблема! Может вы можете что подсказать! Или есть у исходники с примерами??
...
Рейтинг: 0 / 0
20.10.2010, 13:32
    #36909444
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Вот. Теперь другой разговор.
Рекомендую почитать сначала это: Entity Framework в многоуровневых архитектурах (с исходниками)
Ещё сюда: Using Repository Pattern with Entity Framework
А написать WCF сервис, применив указанный выше паттерн проектирования, не составит труда.
...
Рейтинг: 0 / 0
20.10.2010, 13:33
    #36909448
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Сайт глючит. Время поста не верно определил. Я отвечал на сообщение от 13:03.
...
Рейтинг: 0 / 0
20.10.2010, 16:25
    #36909969
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
МСУ
Дело в том что методы я уже написал но они рабтают както странно хотя вроди бы всё правильно!!!
У меня 2 таблици связанные по ID но при запуске приложения в одном гриде выводятся 2 таблици и в перемешку колонки! Хотя я добовлял лиш одну таблицу!!
А да кстати у вас небудт чего нибуть интересного по созданию ПОЛЬЗОВАТЕЛЬСКИХ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ на WPF?? Благодарю !!!
...
Рейтинг: 0 / 0
20.10.2010, 16:42
    #36910034
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
lol2МСУДело в том что методы я уже написал но они рабтают както странно хотя вроди бы всё правильно!!!
Что именно вызывает подозрения? Вы поймите, наконец, тут телепатов нет.

lol2У меня 2 таблици связанные по ID но при запуске приложения в одном гриде выводятся 2 таблици и в перемешку колонки!
Вы мне предлагаете угадать код, который Вы написали?

lol2А да кстати у вас небудт чего нибуть интересного по созданию ПОЛЬЗОВАТЕЛЬСКИХ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ на WPF?? Благодарю !!!
Крис Андерсон "Основы Windows Presentation Foundation".
...
Рейтинг: 0 / 0
20.10.2010, 17:33
    #36910190
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
МСУ,
Сервис!
Код: plaintext
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.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
public class WCF : IWCF
    { 
        LINQDataContext linq;
        public List<Empoyee> Selected() 
        {
            linq = new LINQDataContext();
            return (from c in linq.Empoyee
                    select c).ToList();
        }
        public List<Empoyee> Insert( string firstName, string lastName) 
        {
            Empoyee employe = new Empoyee();
            employe.First_Name = firstName;
            employe.Last_Name = lastName;

            linq = new LINQDataContext();

            linq.Empoyee.InsertOnSubmit(employe);
            linq.SubmitChanges();
            linq.Refresh(RefreshMode.OverwriteCurrentValues);
            var Return  = linq.Empoyee.ToList();

            return Return;       
        }

        public List<Empoyee> Delete(int ID) 
        {
            linq = new LINQDataContext();

            linq.Empoyee.DeleteOnSubmit(linq.Empoyee.Single<Empoyee>(c => c.ID == ID));
            linq.SubmitChanges();
            linq.Refresh(RefreshMode.OverwriteCurrentValues);
            var Return = linq.Empoyee.ToList();
            return Return;
        
        }
        public List<Empoyee> Update(int ID, string firstName, string lastName) 
        {
            Empoyee employe = new Empoyee();
            employe.ID = ID;
            employe.First_Name = firstName;
            employe.Last_Name = lastName;

            linq = new LINQDataContext();
            linq.SubmitChanges();
            linq.Refresh(RefreshMode.OverwriteCurrentValues);
            var Return = linq.Empoyee.ToList();
            return Return;
        
        }
Клиент!
Код: plaintext
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.
29.
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
           WCFS.WCFClient wcf = new WPF.WCFS.WCFClient();

           dataGrid1.ItemsSource = wcf.Selected().ToList();

           dataGrid1.Items.Refresh();

        }

        private void button1_Click(object sender, RoutedEventArgs e)
        {
            WCFS.WCFClient wcf = new WPF.WCFS.WCFClient();
            dataGrid1.ItemsSource = wcf.Insert(textBox2.Text, textBox3.Text).ToList();
        }

        private void button2_Click(object sender, RoutedEventArgs e)
        {
            WCFS.WCFClient wcf = new WPF.WCFS.WCFClient();
            dataGrid1.ItemsSource = wcf.Delete(int.Parse(textBox1.Text)).ToList();

        }

        private void button3_Click(object sender, RoutedEventArgs e)
        {
            WCFS.WCFClient wcf = new WPF.WCFS.WCFClient();
            dataGrid1.ItemsSource = wcf.Update(int.Parse(textBox4.Text), textBox6.Text, textBox7.Text).ToList();
                
           
        }
...
Рейтинг: 0 / 0
20.10.2010, 17:41
    #36910221
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Мне непонятен смысл приватного члена linq. В каждом методе сервиса создавайте и уничтожайте контекст:

Код: plaintext
1.
2.
3.
4.
5.
6.
public List<Empoyee> Selected() 
{
    using (var linq = new LINQDataContext()
    {
        return linq.Empoyee.ToList();
    }
}

Во-вторых, Вы так и не ответили мне:

МСУЧто именно вызывает подозрения?
...
Рейтинг: 0 / 0
20.10.2010, 17:57
    #36910270
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
МСУ

При удаление строки из таблици по ID строка удаляеться но удалятся вмете с ID и после рефрэш таблици ID не обнавляються! Например удалим 2 счёт пойдёт с 1,3,4.. вот !
И проблема с методом Selected() как видно из картинки он таблицу пихнул в столбец, а также нарушен порядок стролбцов короче полная ЖО...( )0( )!!
...
Рейтинг: 0 / 0
20.10.2010, 18:12
    #36910307
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Код XAML разметки грида + CodeBehind в студию.

P.S. Вот пример под удаление записи:

Пример
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<Button Name="btnRemove" Content="Удалить" IsEnabled="{Binding ElementName=gridCategories, Path=SelectedItem, Mode=TwoWay, Converter={StaticResource NullableNotConverter}}" HorizontalAlignment="Left" Width="75" Canvas.Left="160" Canvas.Top="0" Click="btnRemove_Click" />

<sdk:DataGrid Name="gridCategories" ItemsSource="{Binding Items}" Height="3000" AutoGenerateColumns="False">
    <sdk:DataGrid.Columns>
        <sdk:DataGridTextColumn Binding="{Binding CategoryID}" Width="Auto" Header="Код" IsReadOnly="True" />
        <sdk:DataGridTextColumn Binding="{Binding CategoryName}" Width="SizeToCells" Header="Название" IsReadOnly="True" />
        <sdk:DataGridTextColumn Binding="{Binding Description}" Width="SizeToCells" Header="Описание" IsReadOnly="True" />
</sdk:DataGrid>


Код: plaintext
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.
29.
30.
31.
32.
33.
34.
protected void Bind()
{
    gridCategories.Height = double.NaN;

    var svc = new DataServiceClient();
    svc.GetCategoriesCompleted += delegate(object sender, GetCategoriesCompletedEventArgs e)
    {
        (DataContext as CategoryListModel).Items = e.Result;
    };
    svc.GetCategoriesAsync();
}

private void btnRemove_Click(object sender, System.Windows.RoutedEventArgs e)
{
    var category = gridCategories.SelectedItem as CategoryEx;
    if (category != null)
    {
        if (MessageBox.Show("Вы действительно хотите удалить категорию?", "Удаление", MessageBoxButton.OKCancel) == MessageBoxResult.OK)
        {
            Remove(category.CategoryID.Value);
        }
    }
}

protected void Remove(int CategoryID)
{
    var svc = new DataServiceClient();
    svc.RemoveCategoryCompleted += delegate(object sender, AsyncCompletedEventArgs e)
    {
        Bind();
    };
    svc.RemoveCategoryAsync(CategoryID);
}



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class DataService : IDataService
{    
    // ...

    public void RemoveCategory(int CategoryID)
    {
        using (var ctx = new NorthwindEntities())
        {
            var category = ctx.Categories.SingleOrDefault(d => d.CategoryID == CategoryID);
            if (category != null)
            {
                ctx.DeleteObject(category);
                ctx.SaveChanges();
            }
        }
    }
}
...
Рейтинг: 0 / 0
20.10.2010, 18:26
    #36910343
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
МСУ
ППц а без XAML нельзя ??
и что (CodeBehind в студию)?? Я не силён в WPF только начинаю осваивать !!
...
Рейтинг: 0 / 0
20.10.2010, 19:24
    #36910464
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
lol2МСУППц а без XAML нельзя ??
Вы мне задаёте такой вопрос, собираясь писать WPF приложения? :)
Милок, идите-ка лучше подучите азы выбранной технологии, почитайте книжку, рекомендованную мной. А через пару неделек продолжим тред, если вопросы сами собой не отпадут.

lol2и что (CodeBehind в студию)?? Я не силён в WPF только начинаю осваивать !!
Осваивайте.

P.S. Удачи.
...
Рейтинг: 0 / 0
20.10.2010, 19:35
    #36910484
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
МСУ
Я тоже так думаю !!! Только дело в том что так долго мне нельзя! Так что за сёдня прочту!! А завтра поговарим!! СПС за компитентные ответы !!! :)
...
Рейтинг: 0 / 0
20.10.2010, 19:49
    #36910513
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
Какой отважный отчаянный мембер
...
Рейтинг: 0 / 0
22.10.2010, 20:48
    #36915477
lol2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Из сущности LINQ в коллекцию??
МСУ
Всё книгу я приговорил !! Я хотел поинтересоваться откуда у вас выше выше приведенный пример можно ссылку!?!?!?
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Из сущности LINQ в коллекцию?? / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]