【发布时间】:2020-04-03 10:39:55
【问题描述】:
我想在我的数据库(SQLite)中创建新表,所以我创建了新模型并在 ApplicationDbContext 类中使用它,如下所示:
public DbSet<AppUser> AppUsers { get; set; }
public DbSet<Report> Reports { get; set; }
然后执行后面的命令: dotnet ef 迁移添加报告 我可以看到迁移文件。 在 Startup.cs 文件中我有:
services.AddDbContext<ApplicationDbContext>(options => options.UseSqlServer(connectionString));
services.AddDbContext<AppIdentityDbContext>(options => options.UseSqlServer(connectionString));
在 EFRepository.cs 中:
public IQueryable<AppUser> AppUsers
=> ctx.AppUsers;
public IQueryable<Report> Reports => ctx.Reports;
此后不知何故,我突然收到许多与此文件有关的错误 (.csproj):
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
<AssemblyName>Mushrooms</AssemblyName>
<RootNamespace>Mushrooms</RootNamespace>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.0.0">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.0.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="3.0.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="3.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
</ItemGroup>
</Project>
我检查了 dotnet --info 命令,但看不到不兼容。 三个错误:
无效的标记声明'
无效的标记声明'
文档根级别的令牌“”无效。
这个文件的每一行都有更多内容。
系统启动时出现此错误。 我正在使用 Asp .NET Core MVC 3.0.0。 在此之前一切正常,有什么建议吗?
【问题讨论】:
-
没有
cvproj分机。应该是csproj。这也不是一个有效的 XML 文档,元素永远不会关闭 -
这意味着,或者扩展名错误但您只发布了部分文件,或者您拼写错误的扩展名并仅发布了文件的一部分,或者扩展名和内容都错误。
-
你能显示实际和准确的错误信息吗?另外,这是完整的文件,还是您遗漏了什么?因为现在,最后至少缺少一个结束
</Project>。 -
@poke 我发布了文件的一部分。现在,当然有带有 .csproj 扩展名的完整文件。
-
这是有效的 XML。您应该更详细地描述您所做的事情,而不是“我已经完成了迁移”。
标签: asp.net-core .net-core asp.net-core-mvc entity-framework-core asp.net-core-3.0