如何在Visual Studio中为Blazor服务器端项目解决错误消息?

iecba09b  于 2023-05-29  发布在  其他
关注(0)|答案(1)|浏览(156)

Visual Studio中出现错误消息,需要帮助

大家好
我在Visual Studio中遇到了一个特殊的问题,我看到了实际上不存在的错误消息。虽然我仍然能够没有任何问题地构建项目,但这些错误正在造成障碍。在项目 *... * Security中的文件Authorize.razor中的行“@typeparam T_User where T_User: IdentityUser<Guid>, IUser“中发生了一个特定的错误,我在“where“关键字处得到了一个RZ1017错误。我真的不知道为什么。在另一个项目中,另一个.razor文件工作正常。奇怪的是,解决方案中的另一个项目中也存在此错误,但在这种情况下,它会阻止成功的生成。我想指出的是,这个问题在三个小时前并不存在。它似乎是突然发生的,没有对代码或项目设置进行任何更改。

以下是我已经尝试解决问题的步骤:
**1.**关闭Visual Studio中的所有文档。
**2.**多次重新启动Visual Studio。
**3.**删除bin和obj文件夹。
**4.**清除了Roslyn缓存。
**5.**已清除ComponentModel缓存。
**6.**已删除.vs文件夹。
**7.**再次克隆仓库。
**8.**已重新启动PC。
**9.**使用Visual Studio安装程序“修复”Visual Studio

这里是仓库的链接:https://github.com/NicoVolling/NicoVolling-Web

**Visual Studio版本:**Community Edition 2022 17.6.0
项目详情:.NET 7、Asp.NET、Blazor Server Side、Entity Framework、Identity
从安全项目授权.razor:

@using Microsoft.AspNetCore.Identity;
@using NiVo.Framework.Components;
@using NiVo.Framework.Security.Authorization;
@using NiVo.Framework.Security.Identity;

@inherits BaseComponent

@typeparam T_User where T_User : IdentityUser<Guid>, IUser
@typeparam T_LoginPage
@typeparam T_404Page

@if (Display && ChildContent != null)
{
    @ChildContent(User)
}
else if(ShowLoginIfNotAuthorized && !ValidateAsync(BaseRules.Authenticated).Result)
{
    <DynamicComponent Type="typeof(T_LoginPage)" Parameters="@(new Dictionary<string, object>() { { "ReturnUrl", NavigationManager.Uri.Replace(NavigationManager.BaseUri, "") } })" />
}
else if(Show404NotAuthorized)
{
    <DynamicComponent Type="typeof(T_404Page)" />
}

Screenshot: Errors in File Authorize.razor

Security.csproj来自Security项目:

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

  <PropertyGroup>
    <TargetFramework>net7.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
      <OutputType>Library</OutputType>
  </PropertyGroup>

  <ItemGroup>
    <ProjectReference Include="..\NiVo.Framework.Components\NiVo.Framework.Components.csproj" />
    <ProjectReference Include="..\NiVo.Framework.Data\NiVo.Framework.Data.csproj" />
  </ItemGroup>

    <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore.Identity" Version="2.2.0" />
        <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="7.0.0" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0">
            <PrivateAssets>all</PrivateAssets>
            <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
        </PackageReference>
        <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.0">
            <PrivateAssets>all</PrivateAssets>
            <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
        </PackageReference>
    </ItemGroup>

</Project>

如果任何人遇到类似的问题或有任何关于如何解决这个问题的建议,我将非常感谢您的帮助。如果你需要任何进一步的信息,请告诉我。

提前感谢您!

  • 尼科·沃林 *
    编辑#1:

我在Windows 11 Dev VM中使用Visual Studio Community Edition 2022 17.5.5进行了尝试:工作正常我不知道它是否取决于设置,版本或其他东西。下一步:我目前正在更新VM中的VS。如果出现问题,则是版本问题。

编辑#2:

这是版本问题。刚刚升级到17.6版本:真的什么都不好所以我需要回到版本17.5.5或17.5.IDontKnow

ffx8fchx

ffx8fchx1#

我的问题的最终解决方案是从Visual Studio版本17.6回滚。

请参阅我的问题编辑#2:

这是版本问题。刚刚升级到17.6版本:真的什么都不好所以我需要回到版本17.5.5或17.5.IDontKnow
这就是我问题的完整答案。

相关问题