Сегодня был второй день с тех пор, как я заметил это исключение: < /p>
Операция базы данных не удалась при обработке запроса. SQLiteException: SQLite Ошибка 14: «Невозможно открыть файл базы данных».
Применение существующих миграций может решить эту проблему. Существуют
миграции, которые не были применены к следующей базе данных (S): < /p>
blazorwebappadmincontext < /p>
202507081234561_myarmargementname < />
20250708123456_myArmentname < />
20250708123456_myArmentname < />
20250708123456_myarmayname. />20250709789101_mynewargumentName1.0.0,/li>
20250710111213_mynewargumentName1.0.2 < /> < /ul>
Применить Migrations, что на самом деле является кнопкой . Консоль менеджера для применения в ожидании миграций в базу данных: < /p>
Примечание: мой пакет хостинга .NET Core на Windows Server установлена Dotnet-hosting-9.0.6-win.exe
Я не смог применить конкретное решение к этому вопросу, даже если я уже выполнил эти рабочие данные:
имеет разрешения для чтения и записи:
in in in in in in in in on in in in in in in in in in in d Приложение уже использует обновленную модель данных, успешно применяет миграции и обновляет базу данных SQLite: < /p>
< /li>
< /ol>
using System.ComponentModel.DataAnnotations;
namespace MyBlazorWebAppName.Models;
public class Admin
{
[Key]
public string? UserID { get; set; }
public string? Username { get; set; }
[Required]
[StringLength(100)]
[RegularExpression(@"^[A-Z]+[a-zA-Z\s-]*$")]
public string? GivenName { get; set; }
public string? MiddleName { get; set; }
[Required]
[StringLength(100)]
[RegularExpression(@"^[A-Z]+[a-zA-Z\s-]*$")]
public string? FamilyName { get; set; }
[Required]
[StringLength(150, MinimumLength = 11)]
public string? EmailAdd { get; set; }
[Required]
[StringLength(100, MinimumLength = 3)]
[RegularExpression(@"^[A-Z]+[a-zA-Z\s-]*$")]
public string? RoleType { get; set; }
}
Соответствующие ссылки: редактируйте пул приложений; Pools IIS Pools Clr v4.0 против управляемого кода < /p>
Убедитесь, что веб -приложение Blazor, которое размещено в IIS правильно: < /p>
Обеспечение того, чтобы каждая папка и файл, сгенерированные этой командой dotnet publish -configuration release и в {projectory} \ bin \ leprele \ leleish \ leleish \ leleish \ lepred \ leleish \ leleish \ leleish \ leleish \ leleish \ leleish \ leleish \ leleish \ \ Физический путь:
using MyBlazorWebAppName.Components;
using Microsoft.EntityFrameworkCore;
using MyBlazorWebAppName.Data;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDbContextFactory(options =>
options.UseSqlite(builder.Configuration.GetConnectionString("BlazorWebAppAdminContext") ?? throw new InvalidOperationException("Connection string 'BlazorWebAppAdminContext' not found.")));
builder.Services.AddQuickGridEntityFrameworkAdapter();
builder.Services.AddDatabaseDeveloperPageExceptionFilter();
// Add services to the container.
builder.Services.AddRazorComponents()
.AddInteractiveServerComponents();
var app = builder.Build();
// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Error", createScopeForErrors: true);
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
app.UseMigrationsEndPoint();
}
app.UseHttpsRedirection();
app.UseAntiforgery();
app.MapStaticAssets();
app.MapRazorComponents()
.AddInteractiveServerRenderMode();
app.Run();
< /code>
BlazorWebAppAdminContext.cs
using Microsoft.EntityFrameworkCore;
namespace MyBlazorWebAppName.Data
{
public class BlazorWebAppAdminContext(DbContextOptions options) : DbContext(options)
{
public DbSet Admin { get; set; } = default!;
}
}
< /code>
Note: if you find this different from the default generated file's source code after following the tutorial: Build a Blazor movie database app (Overview), it's because I simply followed the code refactoring suggestions provided by the .NET framework. Nevertheless, it's still working in debug mode.
appsettings.json
< /code>
Reference: ASP.NET Core deployment to IIS error: Development environment should not be enabled in deployed applications
Here's the full configuration of web.config
/>
< /code>
So, here are my questions after all these struggles in deploying my Blazor web app (.NET 9 [using Visual Studio Code]) with SQLite to IIS 8.5 on SQL Server 2012 R2 Standard:
[*]Has anybody else resolved the same issue as mine?
[*]Is this a bug or what?
[*]Do you see a misconfiguration on the project I am working with?
[*]Am I missing something here?
[/list]
EDIT: I've found out that I was using the incompatible ASP.NET Core Runtime for .NET SDK 9.0.302
Regarding the given findings, I downloaded the aspnetcore-runtime-9.0.7-win-x64.exe
и dotnet-hosting-9.0.7-win.exe , а затем установили оба исполняемых файла. Источник: Скачать .NET 9.0 - OSP.NET CORE SURTION 9.0.7. SQLite DB -файл (который я обнаружил, что он имеет значение), который я процитирую (давайте перейдем непосредственно к ответу, чтобы быть простым):
Вам нужно только [назначить] iis_iusrs и iusr to inetpub. Проверьте папку inetpub на сервере Windows, и я обнаружил, что она еще не добавлена. /> и в разрешении на iis_iusrs и iUsr
I Убедитесь, что эти конфигурации:
Сегодня был второй день с тех пор, как я заметил это исключение: < /p>
Операция базы данных не удалась при обработке запроса. SQLiteException: SQLite Ошибка 14: «Невозможно открыть файл базы данных». Применение существующих миграций может решить эту проблему. Существуют миграции, которые не были применены к следующей базе данных (S): < /p> blazorwebappadmincontext < /p> [list] [*] 202507081234561_myarmargementname < /> 20250708123456_myArmentname < /> 20250708123456_myArmentname < /> 20250708123456_myarmayname. />20250709789101_mynewargumentName1.0.0,/li> 20250710111213_mynewargumentName1.0.2 < /> < /ul> Применить Migrations, что на самом деле является кнопкой . Консоль менеджера для применения в ожидании миграций в базу данных: < /p> [code]PM> Update-Database[/code] Альтернативно, вы можете применить ожидающие миграции из командной строки в каталоге проекта: [code]dotnet ef database update[/code]
Примечание: мой пакет хостинга .NET Core на Windows Server установлена Dotnet-hosting-9.0.6-win.exe Я не смог применить конкретное решение к этому вопросу, даже если я уже выполнил эти рабочие данные:
имеет разрешения для чтения и записи:
[*] in in in in in in in in on in in in in in in in in in in d Приложение уже использует обновленную модель данных, успешно применяет миграции и обновляет базу данных SQLite: < /p> < /li> < /ol> [code]using System.ComponentModel.DataAnnotations;
namespace MyBlazorWebAppName.Models;
public class Admin { [Key] public string? UserID { get; set; } public string? Username { get; set; } [Required] [StringLength(100)] [RegularExpression(@"^[A-Z]+[a-zA-Z\s-]*$")] public string? GivenName { get; set; } public string? MiddleName { get; set; } [Required] [StringLength(100)] [RegularExpression(@"^[A-Z]+[a-zA-Z\s-]*$")] public string? FamilyName { get; set; } [Required] [StringLength(150, MinimumLength = 11)] public string? EmailAdd { get; set; } [Required] [StringLength(100, MinimumLength = 3)] [RegularExpression(@"^[A-Z]+[a-zA-Z\s-]*$")] public string? RoleType { get; set; } } [/code]
Соответствующие ссылки: редактируйте пул приложений; Pools IIS Pools Clr v4.0 против управляемого кода < /p> [list] Убедитесь, что веб -приложение Blazor, которое размещено в IIS правильно: < /p>
[*] Обеспечение того, чтобы каждая папка и файл, сгенерированные этой командой dotnet publish -configuration release и в {projectory} \ bin \ leprele \ leleish \ leleish \ leleish \ lepred \ leleish \ leleish \ leleish \ leleish \ leleish \ leleish \ leleish \ leleish \ \ Физический путь:
[/list] .[code]Program.cs[/code]: [code]using MyBlazorWebAppName.Components; using Microsoft.EntityFrameworkCore; using MyBlazorWebAppName.Data;
var builder = WebApplication.CreateBuilder(args); builder.Services.AddDbContextFactory(options => options.UseSqlite(builder.Configuration.GetConnectionString("BlazorWebAppAdminContext") ?? throw new InvalidOperationException("Connection string 'BlazorWebAppAdminContext' not found.")));
// Add services to the container. builder.Services.AddRazorComponents() .AddInteractiveServerComponents();
var app = builder.Build();
// Configure the HTTP request pipeline. if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Error", createScopeForErrors: true); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); app.UseMigrationsEndPoint(); }
namespace MyBlazorWebAppName.Data { public class BlazorWebAppAdminContext(DbContextOptions options) : DbContext(options) { public DbSet Admin { get; set; } = default!; } } < /code> Note: if you find this different from the default generated file's source code after following the tutorial: Build a Blazor movie database app (Overview), it's because I simply followed the code refactoring suggestions provided by the .NET framework. Nevertheless, it's still working in debug mode. appsettings.json[/code]: [code]{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*", "ConnectionStrings": { "BlazorWebAppAdminContext": "Data Source=Data\\BlazorWebAppAdminContext-12345679-10111213-141516.db" } } < /code> Take note: for reproducible concerns, on the generated file web.config[/code], мне нужно было добавить эту конфигурацию, чтобы раскрыть фактическую ошибку, которую я предоставил в самой верхней части этой потоки вопроса: [code]
< /code> Reference: ASP.NET Core deployment to IIS error: Development environment should not be enabled in deployed applications Here's the full configuration of web.config[/code]: [code]
/>
< /code> So, here are my questions after all these struggles in deploying my Blazor web app (.NET 9 [using Visual Studio Code]) with SQLite to IIS 8.5 on SQL Server 2012 R2 Standard:
[*]Has anybody else resolved the same issue as mine? [*]Is this a bug or what? [*]Do you see a misconfiguration on the project I am working with? [*]Am I missing something here? [/list] EDIT: I've found out that I was using the incompatible ASP.NET Core Runtime for .NET SDK 9.0.302 Regarding the given findings, I downloaded the aspnetcore-runtime-9.0.7-win-x64.exe[/code] и dotnet-hosting-9.0.7-win.exe , а затем установили оба исполняемых файла. Источник: Скачать .NET 9.0 - OSP.NET CORE SURTION 9.0.7. SQLite DB -файл (который я обнаружил, что он имеет значение), который я процитирую (давайте перейдем непосредственно к ответу, чтобы быть простым):
Вам нужно только [назначить] iis_iusrs и iusr to inetpub. Проверьте папку inetpub на сервере Windows, и я обнаружил, что она еще не добавлена. /> и в разрешении на iis_iusrs и iUsr I Убедитесь, что эти конфигурации:
Сегодня был второй день , так как я заметил это исключение:
операция базы данных не удалась при обработке запроса. SQLiteException: SQLite Ошибка 14: «Невозможно открыть файл базы данных».
Применение существующих миграций может решить эту...
Сегодня был второй день с тех пор, как я заметил это исключение:
Операция базы данных не удалась при обработке запроса. SQLiteException: SQLite Ошибка 14: «Невозможно открыть файл базы данных».
Применение существующих миграций может решить эту...
Сегодня был второй день с тех пор, как я заметил это исключение:
Операция базы данных не удалась при обработке запроса. SQLiteException: SQLite Ошибка 14: «Невозможно открыть файл базы данных».
Применение существующих миграций может решить эту...
У меня есть веб -приложение .NET 8 Blazor, которое я создал в шаблоне Visual Studio. У него есть сервер и клиентские проекты.
Мне нужно изменить базовый URL -адрес приложения на /порталы /продажи . Вот изменения, которые я внес
Я начал изучать C# некоторое время назад с курсом Тима Кори, и, хотя он немного устарел в версии Visual Studio, у меня никогда не было проблемы, аналогичной этой.@page /messagewall