powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF6 динамическое применение условий во всех таблицах
22 сообщений из 222, страница 9 из 9
EF6 динамическое применение условий во всех таблицах
    #39733221
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lex452Вроде получилось сделать то что нужно через EntityFramework.DynamicFilters. Там накладывается глобальный фильтр на контекст и есть удобные механизмы их включения отключения и изменения.
Код покажете?
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733232
lex452
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух,

При создании модели прописываем
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {

            modelBuilder.Filter("FilterName", (IFilter d) => d.User, "user1");
            base.OnModelCreating(modelBuilder);
        }
//User - название фильтра для дальнейшего использования
//IFilter - интерфейс который реализуют сущности которые нужно фильтровать, нужен чтобы в условии можно было использовать свойства d.User
//user1 значение фильтра


в обработчике события нажатия кнопки прописываем новое значение user2
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
private void button_Click(object sender, RoutedEventArgs e)
        {
            //myContext.SaveChanges();
            //myContext.EnableAllFilters();
            //myContext.DisableFilter("User");
            myContext.SetFilterGlobalParameterValue("FilterName", "User", "user2");
            //var ddd=myContext.GetFilterParameterValue("FilterName", "User");
            myContext.EnableFilter("User");
            MyGrid.RefreshData(); 
        }



как видно в примере, можно получать значение фильтра изменять его, включать и выключать
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733307
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lex452,
На будущее, не стоит один вариант долбить 8 страниц. Искать обходные пути при максимум второй странице.
... Если это прикладное программирование.
Удачи!
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733330
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lex452,

то есть в итоге выбрали вариант, предложенный 4 дня и 4 страницы назад

магия чисел
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733447
lex452
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне было интересно, возможно ли реализовать как я хотел изначально
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733468
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lex452Мне было интересно, возможно ли реализовать как я хотел изначальноинтересности делают после выполнения задачи как делают все. А не наоборот.
В этом и суть претензии работодателя, если он будет.
Прими это и ступай с миром).
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733476
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lex452Мне было интересно, возможно ли реализовать как я хотел изначальноПоскольку библиотека глобального фильтра внешняя по отношению к EF, стало быть можно реализовать фильтрацию аналогично этой библиотеке - нужно только немного поковырять исходники.
Я б и сам поковырял, если бы работал с EF6, но я давно ушел на Core, а там глобальный фильтр встроенный.
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733481
lex452
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

А core подходит к wpf или это только для web?
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733483
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WPF для Core нет
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733489
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProWPF для Core нет
Avalonia is a WPF-inspired cross-platform XAML-based UI framework providing a flexible styling system and supporting a wide range of OSs: Windows (.NET Framework, .NET Core), Linux (GTK), MacOS, Android and iOS.

https://github.com/AvaloniaUI/Avalonia
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733490
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lex452Мне было интересно, возможно ли реализовать как я хотел изначально
Это называется Tech Spike. Если занимает более двух дней, то ну его на фиг
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733493
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAWPF-inspiredэто не WPF

Xamarin тоже WPF-inspired, но ему далеко до WPF (по крайней мере было несколько лет назад, когда я на нем немножко писал ))
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733514
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProWPF для Core нетможет будет. Ведь пока десктопа Core нету.
Хотя MS может сделать WPF Core не совместимым со старым)))))
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733525
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lex452
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
private void button_Click(object sender, RoutedEventArgs e)
        {
            //myContext.SaveChanges();
            //myContext.EnableAllFilters();
            //myContext.DisableFilter("User");
            myContext.SetFilterGlobalParameterValue("FilterName", "User", "user2");
            //var ddd=myContext.GetFilterParameterValue("FilterName", "User");
            myContext.EnableFilter("User");
            MyGrid.RefreshData(); 
        }



От WPF тут - одно название.

MyGrid.RefreshData(); - ну и ну.
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733531
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProskyANAWPF-inspiredэто не WPF

Xamarin тоже WPF-inspired, но ему далеко до WPF (по крайней мере было несколько лет назад, когда я на нем немножко писал ))
Погоди, ты сейчас принизил проект Avalonia только потому, что несколько лет назад немножко писал на Xamarin?
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733540
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПогоди, ты сейчас принизил проект Avalonia только потому, что несколько лет назад немножко писал на Xamarin?
С чего ты решил, что я его принизил?
Я с ним (ещё) не работал, не готов его оценить. Но Авалония - это же не WPF, это некий XAML-based, я не могу взять сейчас свой WPF-проект и, выкинув пару вызовов WinApi, запустить его под Авалонией. А вопрос ТС был именно про WPF.
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733555
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProskyANAПогоди, ты сейчас принизил проект Avalonia только потому, что несколько лет назад немножко писал на Xamarin?
С чего ты решил, что я его принизил?Да просто написал так, будто раз WPF-inspired, то значит далеко до WPF


Shocker.Proя не могу взять сейчас свой WPF-проект и, выкинув пару вызовов WinApi, запустить его под АвалониейНе можешь, но можешь начать новый кроссплатформенный проект.

Shocker.ProА вопрос ТС был именно про WPF.Вопрос ТС был не именно про WPF, он состоял из двух частей:
lex452А core подходит к wpf или это только для web ?
И можно ответить, что не только для web. Можно писать и десктоп, используя Avalonia.
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733574
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНе можешь, но можешь начать новый кроссплатформенный проект.И сколько мне нужно будет переобучаться? Больше чем с Xamarin-ом или меньше?
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733617
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

жди Net Core 3.0, там будет десктоп
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733728
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProskyANAНе можешь, но можешь начать новый кроссплатформенный проект.И сколько мне нужно будет переобучаться? Больше чем с Xamarin-ом или меньше?
А я откуда знаю. От твоих способностей зависит.
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39733753
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА я откуда знаю. От твоих способностей зависит.Нормальные!

Я к тому, что в Xamarin-е были другие объекты для байндига, для DP, другие базовые классы, там чего-то не было, кажется маршрутизируемых событий (только команды), и в итоге построить полноценное MVVM-приложение без использования CB не получалось.
Авалония стремится сохранить синтаксис WPF по максимуму или же там своя атмосфера? )
...
Рейтинг: 0 / 0
EF6 динамическое применение условий во всех таблицах
    #39735846
lex452
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то я слегка запутался, опять нужна помощь.
У меня подход DbFirst, таблицы в БД созданы на различных схемах, не DBO.

В приложении я создаю EDMX модель, но при ее использовании не вызывается метод OnModelCreating(DbModelBuilder modelBuilder).
Он вызывается только при CodeFirst(исправьте если я не прав). А для использования DynamicFilters нужен этот метод чтобы объявить фильтр.

Я нашел способ с изменением строки подключения, этот метод вызывается, НО создаются таблицы в схеме по умолчанию DBO (хотя создавать мне их в принципе не нужно), то есть приложение воспринимает это как модель CodeFirst. Подскажите как использовать DynamicFilters с DbFirst?
...
Рейтинг: 0 / 0
22 сообщений из 222, страница 9 из 9
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF6 динамическое применение условий во всех таблицах
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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