Здравствуйте, Shmj, Вы писали:
S>А теперь сравните классический EF, который на 2 месте в nuget-пакетах и 34 млн. скачиваний и эту недоделку.
EF включается визардом в любой создаваемый проект, даже если никто об этом не просит. Поэтому у него такое количество скачиваний. После того, как проект сгенерирован и с ним поигрались, его либо удаляют, либо удаляют из него EF.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Shmj, Вы писали:
S>Собственно, выбрал SQL Server CE как базовую для проги. Можно переключать, но для не опытных она автоматом стоит. Выбрал как наименее гемморную для EF, для которой из коробки все работает (для SQLite нужно вручную создавать таблицы, а это мне не приятно).
А вопросы задавать или гууглить религия не позволяет?
Не знаю какой у вас инициалайзер, но вы не поверите — в SQLite даже миграции поддерживаются. достаточно в конструкторе Configuration указать
public Configuration()
{
SetSqlGenerator("System.Data.SQLite", new SQLiteMigrationSqlGenerator());
}
Здравствуйте, Shmj, Вы писали:
bnk>>EF не поддерживает SQL CE, насколько я знаю, ты скорее всего заблуждаешься. И не стоит он нигде автоматом, AFAIK.
S>Поддерживает полностью, включая миграции. Достаточно подключить пакет: S> <package id="Microsoft.SqlServer.Compact" version="4.0.8876.1" targetFramework="net45" />
Это 2012 год. С того времени он к сожалению успел немножко помереть.
S>Unlike MS SQL Server, as default, the free Sqlite driver from system.data.sqlite doesn’t support Migration.So you can’t create a new database from code.You have to manually create it.
S>https://stackoverflow.com/questions/39247760/how-to-enable-migration-in-sqlite
Тоже устаревшая информация.
"Официальных" (out-of-the-box) провайдеров от M$ для EF7 (который стал теперь Core) ровно три три: SQL SERVER, SQLITE, In-Memory.
Здравствуйте, Shmj, Вы писали:
S>Собственно, выбрал SQL Server CE как базовую для проги. Можно переключать, но для не опытных она автоматом стоит. Выбрал как наименее гемморную для EF, для которой из коробки все работает (для SQLite нужно вручную создавать таблицы, а это мне не приятно).
EF не поддерживает SQL CE, насколько я знаю, ты скорее всего заблуждаешься. И не стоит он нигде автоматом, AFAIK.
Ты точно его не путаешь с чем-то другим? Неоткуда там взяться секундным задержкам, там же просто файл.
А вообще сейчас SQL CE выглядит примерно таким же мертвым как сильверлвйт.
Оно тебе точно надо, тащить его в новый продукт?
А вот для SQLITE как раз EF работает, и он официально поддерживается.
Вручную создавать таблицы не обязательно.
Здравствуйте, AndrewVK, Вы писали:
AVK>Ну то есть Core, который уже несколько версий пережил это сыро, а черепаший WebAssembly, которой, похоже, активно саботируется некоторыми членами комитета, это цель. Ну ок, жди.
Почему черепаший? Да, он в разработке. Но! Посмотрите какие крутые ребята пилят:
Команда, работающая над WebAssembly, включает разработчиков из компаний Mozilla, Google, Microsoft и Apple, которые представляют на рынке четыре наиболее распространённых браузера — Firefox, Chrome, Microsoft Edge и Safari соответственно[6].
Как раз через год допилят и начнутся слухи о скорой кончине Core. Так как везде будет крутой WebAssembly, а не ЛапшаСкрипт. И только старые сайты, по старинке, будут юзать HTML и JS.
Навернякак сразу же эти ребята и продумают вопрос индексации контента, чтобы поисковики все автоматически индексировали еще лучше чем индексируют HTML.
Собственно, выбрал SQL Server CE как базовую для проги. Можно переключать, но для не опытных она автоматом стоит. Выбрал как наименее гемморную для EF, для которой из коробки все работает (для SQLite нужно вручную создавать таблицы, а это мне не приятно).
Но есть одна заноза. На моем компе все работает шустро, подключается за 1 сек. А на других компах с тем же окружением, с более быстрым железом, той же версией Windows и .Net, с той же версией SQL CE 4.0 SP 1 -- подключение происходит 5-7 сек.
Здравствуйте, VladCore, Вы писали:
VC>Не знаю какой у вас инициалайзер, но вы не поверите — в SQLite даже миграции поддерживаются. достаточно в конструкторе Configuration указать
VC>
VC>public Configuration()
VC>{
VC> SetSqlGenerator("System.Data.SQLite", new SQLiteMigrationSqlGenerator());
VC>}
VC>
А где его взять? У меня не видит SQLiteMigrationSqlGenerator . Подключены пакеты:
bnk>Ты точно его не путаешь с чем-то другим? Неоткуда там взяться секундным задержкам, там же просто файл.
MS всегда найдет где взять секундные задержки, даже если это просто файл
Причем на моем компе задержек нет. На других есть. Как понять почему нет у меня
bnk>А вообще сейчас SQL CE выглядит примерно таким же мертвым как сильверлвйт.
Но он работает.
bnk>А вот для SQLITE как раз EF работает, и он официально поддерживается. bnk>Вручную создавать таблицы не обязательно.
Тут пишут:
Unlike MS SQL Server, as default, the free Sqlite driver from system.data.sqlite doesn’t support Migration.So you can’t create a new database from code.You have to manually create it.
Здравствуйте, bnk, Вы писали:
S>>Поддерживает полностью, включая миграции. Достаточно подключить пакет: S>> <package id="Microsoft.SqlServer.Compact" version="4.0.8876.1" targetFramework="net45" />
bnk>Это 2012 год. С того времени он к сожалению успел немножко помереть.
Не пытайтесь угнаться за модой, это не всегда разумно. Если решение работает -- значит его можно использовать.
bnk>Тоже устаревшая информация. bnk>"Официальных" (out-of-the-box) провайдеров от M$ для EF7 (который стал теперь Core) ровно три три: SQL SERVER, SQLITE, In-Memory.
bnk>https://github.com/aspnet/EntityFrameworkCore
А теперь сравните классический EF, который на 2 месте в nuget-пакетах и 34 млн. скачиваний и эту недоделку. А так же возможности -- классический EF поддерживает и MySQL и Postgre...
Вы спешите. MS много чего пытается но мало что получается. Вот телефоны хотели делать. Ну и где эти телефоны сейчас?
Здравствуйте, Shmj, Вы писали: S>Собственно, выбрал SQL Server CE как базовую для проги. Можно переключать, но для не опытных она автоматом стоит. Выбрал как наименее гемморную для EF, для которой из коробки все работает (для SQLite нужно вручную создавать таблицы, а это мне не приятно).
У любого уважающего себя ORM есть api для генерации ddl скрипта содержимой модели. Или создание таблиц прямо из дизайнера -- нужно провайдер только настроить.
У меня OpenAccess Telerik, генерации ddl скрипта модели выглядит как-то так (поглядел у них на форуме):
как-то так
private static void Initialize(string conStr)
{
using(var context = new MyModel())
{
MetadataContainer metadata = context.Metadata;
foreach (MetaPersistentType type in metadata.PersistentTypes)
{
// This will create all entity tables in model, but not tables for joinstype.ShouldUpdateSchema = true;
// Now handle table joins for associationsforeach (MetaMember member in type.Members)
{
var navMember = member as MetaNavigationMember;
if (navMember != null)
{
var joinAssociation = navMember.Association as MetaJoinTableAssociation;
if (joinAssociation != null)
joinAssociation.ShouldUpdateSchema = true; // Only do if there is a join association
}
}
}
BackendConfiguration config = MyModel.GetBackendConfiguration();
using(var updateContext = new OpenAccessContext(conStr, config, metadata))
{
ISchemaHandler schema = updateContext.GetSchemaHandler();
schema.CreateDatabase();
string ddlScript = schema.CreateDDLScript();
schema.ExecuteDDLScript(ddlScript);
}
}
}
Здравствуйте, IT, Вы писали:
IT>EF включается визардом в любой создаваемый проект, даже если никто об этом не просит. Поэтому у него такое количество скачиваний. После того, как проект сгенерирован и с ним поигрались, его либо удаляют, либо удаляют из него EF.
В Asp Core все же убрали, если не включать аутентификацию.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
Здравствуйте, Shmj, Вы писали:
AVK>>В Asp Core все же убрали, если не включать аутентификацию. S>Да что вы носитесь с тем Core как дурень с писаной торбой.
Ну не носись, делов то. Будешь сидеть на старой медленно протухающей версии без заметных обновлений, делов то.
S>Уже ж были и Win Phone и Win RT. Мало вам?
Доказательство по аналогии?
S>Покажите мне Core.
Сам смотри.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
Здравствуйте, AndrewVK, Вы писали:
AVK>Что в лоб, что по лбу.
Слышал хороший совет. Прежде чем заюзать очередную новомодную технологию от MS, следует выждать минимум 2 года. Если после этого времени разговоры о кончине не начинаются -- можно юзать.
Core релизнули только 2016-06-27. Т.е. к осени 2018 можно будет прислушиваься, говорят ли о кончине Core или хотят ли ее на что-либо заменить.
Сколько людей обожглось на том же Silverlight, WinRT, WinPhone... Я уже не говорю про малоизвестные технологии, такие как LightSwitch.
Здравствуйте, Shmj, Вы писали:
S>Сколько людей обожглось на том же Silverlight, WinRT, WinPhone... Я уже не говорю про малоизвестные технологии, такие как LightSwitch.
Но намного больше технологий продолжают жить. Риск есть всегда, а чтобы его минимизировать надо не на воду дуть и сроки выжидать, а использовать мозг и немножко инсайда.
Конкретно ASP.NET Core, и тебе это уже говорили, не абсолютно новая технология, а следующая версия ASP.NET MVC. Да, не полностью совместимая. Но изменения в основном касаются middleware и всяких вспомогательных вещей типа новых конфигов или встроенного DI. И в том крайне маловероятном случае, когда МС совсем забъет на Core, много времени вернуться на старый ASP.NET и OWIN не займет.
Я уж не говорю о том, что альтернатив Core, при условии сохранения генерации вьюх на беке, по сути и нет. MVC 5 никто активно развивать уже не будет.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
Здравствуйте, AndrewVK, Вы писали:
AVK>Я уж не говорю о том, что альтернатив Core, при условии сохранения генерации вьюх на беке, по сути и нет. MVC 5 никто активно развивать уже не будет.
Есть вариант отказа от HTML как такового. Для поисковиков делать типа JSON-справки в машиночитаемом формате.
Я имею в виду что в ближайший год, с учетом сего, могут появится совсем новые веяния. И Core придется забросить нафиг как устаревшую, даже не успев доделать.
Мы то, старперы, привыкли к стабильности. И мыслим категориями стабильности. А жизнь очень не стабильна...
Сделают WebAssembly Everywhere и все тут... И JS нафиг.
Главная проблема сейчас, почему этого не произошло -- поисковики. Но ведь это вопрос решаемый...
Здравствуйте, Shmj, Вы писали:
AVK>>В пользу чего? S>Какой-нибудь WebAssembly Everywhere. Нафиг JS и все тут...
Ну то есть Core, который уже несколько версий пережил это сыро, а черепаший WebAssembly, которой, похоже, активно саботируется некоторыми членами комитета, это цель. Ну ок, жди.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>