我有一个 Razor 类库,我已经在 .NetCore3 和 .NetCore 5 上使用了几个月,没有出现任何问题。
最近将我们的 blazor 服务器应用程序和 Razor 类库更新到 .NetCore 6 后,我在从 Razor 类库加载资源时遇到了问题。
RCL 是通过 nuget 构建和打包的,我可以看到包中的资产,例如;

Web 应用程序已更新为使用单个 program.cs,我正在使用WebApplication.CreateBuilder()我的设置选项。
        var builder = WebApplication.CreateBuilder(new WebApplicationOptions
        {
            ApplicationName = typeof(Program).Assembly.FullName,
            ContentRootPath = Directory.GetCurrentDirectory(),
            EnvironmentName = Environments.Development,
            WebRootPath = ""
        });
加载这些资源时出现 404 错误
    <link href="_content/Blurred.Framework.Web.Shared/favicon.ico" type="image/x-icon" rel="icon" />
    <link href="_content/Blurred.Framework.Web.Shared/css/bootstrap/bootstrap.min.css" rel="stylesheet" />
    <link href="_content/Blurred.Framework.Web.Shared/css/site.css" rel="stylesheet" />
我还可以看到wwwroot文件夹和相应的资产已加载到 Visual Studio 中的应用程序项目中。

感觉这是一个配置问题,而不是需要更改的重大问题。
ContentRootPath或 的正确设置是什么WebRootPath?
据此,我需要使用app.UseStaticFiles();我已经完成的内容,以及.NET6中未使用的 …
我这里有问题,
我创建了一个核心 3.1 的 Blazor 应用程序(服务器端),然后我用这个类库创建了一个 Razor 类库(旧 razorlib)我可以创建 blazor comp 并在我的 blazor 应用程序中重用 < myComp >,共享 Css 甚至创建完整的 Razor 视图,如Area/MyAdmin/Pages/Page1.cshtml 并从我的 Blazor 应用程序调用https://MyApp/MyAdmin/Page1使用它,抱歉我的大介绍,我的问题是,如何像页面一样重用 FULL Blazor 组件?在我的 Razor 类库中添加一个文件夹 Pages 并在其中添加 Contact.razor 并且它不会用作我的 Blazor 应用程序中的 < Contact > 但我将能够像https://MyApp/Contact一样调用?
有人可以给我一个例子吗?谢谢!
有没有办法在创建 Razor 类库并且其中有 js、css 时,它会自动从 Blazor 应用程序添加 _Host.cshtml 中的参考链接?
简而言之,我不想将我的 Css/js 的引用从我的 razor 类库添加到另一个 blazor 应用程序主机(布局)
我在 razor 类库 (.net Core 3.1) 中实现 ASP.NET Core (v3.1) 应用程序使用的静态文件时遇到困难。
当尝试访问静态文件时,我只收到 404 - 未找到。
我在 Stackoverflow 上遵循以下答案: https: //stackoverflow.com/a/57874357/1099519或
我在库中的以下位置放置了一个 css 文件:
wwwroot\css\Base.css并测试了以下路径:https://localhost:44300/_content/OurIt.Cockpit/css/Base.css,这会导致 404 未找到响应。
我已经检查过的内容:
app.UseStaticFiles();网络应用程序中。webBuilder.UseStaticWebAssets();网络应用程序中。wwwroot\css\Base.css为Content。<Project Sdk="Microsoft.NET.Sdk.Razor">。在 RCL 项目中设置以下属性:
<PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <AddRazorSupportForMvc>true</AddRazorSupportForMvc>
<PropertyGroup>
我还尝试了这个答案中描述的方式: https: //stackoverflow.com/a/59574845/1099519 ,我尝试从https://localhost:44300/path/css/Base.css访问该文件
是否有机会调试或定位问题?关于微软文档:
构建 RCL 时,会生成一个描述静态 Web …
我尝试创建一个 Razor 类库,我将能够在各种项目中使用它。我需要 Razor 类库来拥有它自己的实体框架实体。我想以某种方式设置解决方案,以便 Razor 类库将使用主 Web 应用程序的 dbcontext。我用谷歌搜索,但我没有找到实现它的方法。
我希望 Razor 类库是可重用的,这样我只需要在主 Web 应用程序中添加引用并添加迁移,一切就可以使用了。
有人可以建议我如何设置解决方案以使其工作吗?
asp.net-core-2.1 entity-framework-core-2.1 razor-class-library
我正在使用 .NET Core 3.1 Razor 类库 (RCL) 创建一个可重用的 UI,如下所述:
我能够创建一个包含静态资产的 RCL,并且能够按照上面链接中的说明使用它们。默认情况下,Visual Studio 2019 (16.5.1) 只为 RCL 项目本身中的 CSS/JavaScript 文件提供 IntelliSense,而不是来自任何依赖项目。有一个先前回答的问题,显示了如何在依赖项目中创建 JavaScript 文件(它提到了一个 CSS 解决方案,但没有提供实际答案):
有谁知道如何让 VS2019 在依赖项目中提供 CSS IntelliSense?这里有一个示例解决方案可以说明这里的问题:
https://github.com/shawnpaige/RCLIntellisense
感谢您的任何见解。
我最近遇到了 Razor 类库,并不能 100% 确定它们能/不能实现什么,但我非常喜欢能够创建可以在多个视图中共享的视图(和部分视图)的概念。网络项目。
然而,虽然我了解一点 C# 并且非常熟悉转换工具,但我对 VB.Net 的熟练程度要高出 1000 倍,因此我的大部分工作都是以这种方式编码的。.NET Core,据我所知不支持VB.NET。
我按照教程并从此处下载了示例代码https://learn.microsoft.com/en-us/aspnet/core/razor-pages/ui-class?view=aspnetcore-3.1&tabs=visual-studio
这样我就能够构建一个包含 RCL 和 .NetCore 网站的解决方案,该网站使用 RCL 中的视图和部分视图。
我能够构建多个 .NETCore 网站,我所要做的就是添加对 RCL 项目的引用,它们都将使用 RCL 中的共享部分视图...一切运行良好。
除了,我不想要 .NETCore 网站项目,因为我想坚持使用 VB.NET,所以我阅读并被告知我使用 .netstandard2.0 创建的 RCL 应该与 .Net Framework 兼容。
笔记; 本质上,为了满足当前的需求,我打算主要使用 RCL 来创建要在多个项目之间共享的部分视图。我很高兴使用 C# 创建它们作为项目逻辑,并且我的很多代码逻辑已经存在于 VB 类库中,我可以导入它们,但不想重写或重新学习我在 main 中已经完成的所有内容我的大部分项目。
无论如何,将我的所有工作升级到 .NetCore 将是一场噩梦......
所以....
以上一切工作正常,引用添加正常,没有任何问题。
但是...我无法弄清楚如何让 RCL 中的部分视图可供网站访问。
我不断收到错误
The partial view '****' was …本页介绍了如何创建 Razor 类库来放置共享组件。我试图创建一个示例 Blazor 服务器端项目,其中它index.razor有一个在 Razor 类库中定义的组件。有用。
我想做的是开发一个 Blazor 服务器端应用程序,将来可以将托管模型更改为 WASM。我想知道是否可以在共享 RCL 中创建页面和组件,在这种情况下,我可以在 Blazor 服务器端项目中创建控制器,并通过 Http 调用从 Razor 类库中使用它们。如果我想将托管模型更改为 WASM,这将在将来对我有所帮助。
无论如何,我已经尝试在 RCL 中创建一个 Blazor 页面,但是当我尝试调用里面写的 URL 时,@page它没有到达。
我想问你是否有可能实现这种行为。如果是,我错过了什么?
您可以复制我的示例,只需创建一个新的 Blazor 服务器端项目,使其引用 RCL,然后插入@page "/testpage"到Component1.razor 
asp.net-core blazor razor-class-library blazor-server-side blazor-client-side
我正在创建一个 ASP.Net Core 3 预发布 9 MVC 应用程序,我想创建一些 Razor 类库 (RCL)。当从模板创建 RCL 时,它将默认为目标netstandard2.0,这对于 .Net Core 3 确实不再可能,参考以下GitHub 问题。然后通过以下代码抛出一些奇怪的错误:
<Project Sdk="Microsoft.NET.Sdk.Razor">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <RazorLangVersion>3.0</RazorLangVersion>
  </PropertyGroup>
  <ItemGroup>
    <FrameworkReference Include="Microsoft.AspNetCore.App" />
  </ItemGroup>
</Project>