【问题标题】:.csproj bug in Asp .NET Core MVCAsp .NET Core MVC 中的 .csproj 错误
【发布时间】: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 文档,元素永远不会关闭
  • 这意味着,或者扩展名错误但您只发布了部分文件,或者您拼写错误的扩展名并仅发布了文件的一部分,或者扩展名和内容都错误。
  • 你能显示实际和准确的错误信息吗?另外,这是完整的文件,还是您遗漏了什么?因为现在,最后至少缺少一个结束 &lt;/Project&gt;
  • @poke 我发布了文件的一部分。现在,当然有带有 .csproj 扩展名的完整文件。
  • 这是有效的 XML。您应该更详细地描述您所做的事情,而不是“我已经完成了迁移”。

标签: asp.net-core .net-core asp.net-core-mvc entity-framework-core asp.net-core-3.0


【解决方案1】:

我尝试创建空白的 .net core 3.0 项目,这个 csproj 文件工作正常

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.1.0" />
  </ItemGroup>

</Project>

尝试检查您的项目扩展文件应该是.csproj

【讨论】:

  • 它没有改变任何东西,即使升级到 3.1.0,运行我的应用程序后我也有同样的错误。
猜你喜欢
  • 1970-01-01
  • 2016-06-22
  • 1970-01-01
  • 2021-07-21
  • 2017-09-15
  • 2018-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多