问题标签 [razor-class-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
121 浏览

c# - Razor 类库 - 有没有办法将所有 Pages/ 编译为 Pages/?

如何自动将所有 RCL 页面移动到 的子文件夹中Pages/,例如Pages/<module name>在编译时或在 WebApplication 导入时?

我需要这是透明的,这样在 RCL 解决方案中,所有页面都Pages/Pages/<module name>. 或者,它们在 中编译Pages/,但是当被 WebApplication 导入时,它们托管在Pages/<module name>.

是否有项目级别的设置可以在编译页面之前添加一些文件夹名称?或者我可以使用其他一些机制来达到相同的效果?

尝试的解决方案

我曾考虑通过@pagerazor 指令将路由选项添加到 RCL 页面本身,但决定反对它,因为它必须单独对每个页面完成,而且我需要更通用的东西,它将适用于 RCL 中的所有页面。

我通过 Startup.cs 查找了在不同文件夹下导入 RCL 内容的方法ConfigureServices()Configure()但在约定方面没有成功。PageRouteModel和约定都PageApplicationModel只能看到被覆盖的页面。也尝试使用ConfigureFilter,但遇到了同样的问题。

试图查看在 RCL 的根目录中添加一些_ViewImports.cshtml内容以应用某种目录偏移量,但我无法找到关于我可以在此处使用的 razor 指令的良好文档。

0 投票
0 回答
141 浏览

asp.net-core-2.1 - 使用主 Web 应用程序的 dbcontext 的 Razor 类库

我尝试创建一个 Razor 类库,我将能够在各种项目中使用它。我需要 Razor 类库拥有自己的实体框架实体。我想以某种方式设置解决方案,以便 Razor 类库将使用主 Web 应用程序的 dbcontext。我用谷歌搜索,但我没有找到实现它的方法。

我希望 Razor 类库是可重用的,这样我只需要在主 Web 应用程序中添加引用并添加迁移,一切就可以使用了。

有人可以建议我如何设置解决方案以使其正常工作吗?

0 投票
1 回答
1178 浏览

javascript - 在可重用的 Razor 类库中包含静态文件

我正在尝试制作一个可在多个 ASP.NET Core MVC 项目中使用的可重用类库 (RCL)。到目前为止一切顺利……直到我尝试在 RCL 中包含所需的 JavaScript。关于这个主题的文档几乎没有。我最好的尝试是尝试这个例子

但是当我这样做时,我在构建库时收到以下错误:

在此处输入图像描述

这是项目文件和库的结构:

在此处输入图像描述

任何帮助表示赞赏。

0 投票
1 回答
276 浏览

c# - 在 Razor 类库中引用类

我创建了一个新的 Razor 类库(使用“dotnet new razorclasslib”)。然后我在新库中创建了一个名为 Models 的文件夹,它包含一个具有以下测试代码的类:

但是,当我尝试从 Web 应用程序项目中使用此类时(通过将其称为TestLibrary.Models.TestModel),我一直被告知 TestLibrary.Models 命名空间不存在。确切的错误是:

命名空间“TestLibrary”中不存在类型或命名空间名称“Models”(您是否缺少程序集引用?)[TestApplication]

我假设我错过了一些简单的东西,只是不知道是什么。

0 投票
1 回答
134 浏览

razor - 将 RazorPage 从 RazorClassLibrary 渲染到字符串在渲染部分时失败

在 ASP.NET Core 2.2 中渲染 RazorPage 时工作得非常好,直到我添加一个部分标记,当我在浏览器中打开它时它工作正常,但当我使用 RazorPageToStringRenderer 调用它时失败,并出现以下错误:

这是我的 RazorPageToStringRenderer:

问题的关键部分是我的 RazorPage 位于 RazorClassLibrary 中,并且它的路径是 Areas/Email/Pages/ConfirmEmail.cshtml。我也有一个 ViewImports.cshtml ,但我认为它没有正确加载它。

我尝试设置 ViewContext 的 ExecutingFilePath 属性,但这没有任何区别。

事实:页面:RCL\Areas\Email\Pages\ConfirmEmail.cshtml 我使用此行呈现部分页面:

部分:RCL\Areas\Email\Pages\Shared_EmailButton.cshtml

我已经推送了一个在此处重现问题的示例项目:https ://github.com/paulcsiki/TestRCLToString 。

0 投票
0 回答
178 浏览

c# - 具有多个 resx 文件的 RazorClassLibraries 中的静态内容

在我的 Razor 类库中,我需要包含静态文件,如 js 和 css 文件。

我遵循了问题的解决方案 https://stackoverflow.com/a/53024912/8687825。我的项目设置有所不同。我有两个包含不同语言的 resx 文件。项目编译失败,出现以下错误:

这是csproj文件

为了避免异常,我必须命名资源文件。但是它们是如何命名的呢?还是我的项目中有错误的配置?

0 投票
0 回答
242 浏览

c# - 如何从 asp.net 和 asp.net 核心重用相同的 Razor 类库

Razor 类库与 .net 标准兼容,我希望从所有项目类型/平台(asp.net MVC 4、asp.net 核心、控制台应用程序)中重用它们(剃刀渲染引擎)。是否有任何直接的方法来呈现视图而不耦合到特定的.net 平台/框架?

0 投票
1 回答
108 浏览

asp.net-core - 传递(或注入)一些 HTML/JS 或传递一些模型到共享的 Net Core Razor 类库

我想为其他应用程序提供一个具有通用界面的共享 UI 项目,因此我不必_Layout.cshtml在需要相同 UI 的所有应用程序之间复制/粘贴相同的项目。

在使用这个问题作为参考和这篇文章之后,我创建了共享的 Razor 类库项目。当我通过 引用这个项目时NuGet_Layout.cshtml这个共享项目中的 被调用并通过导航呈现标题。

但是如果我想在标题中添加一些额外的 HTML,我的问题就来了。假设我已经下拉了一些指向主登录页面、用户设置、一些管理页面等的链接。但是我如何在所有常用链接旁边添加一些特定于具体应用程序的额外导航链接?有没有办法注入 HTML?或者也许将一些 DTO 模型传递给这个_Layout.cshtml

转储下面的图像,以帮助您了解我尝试实现的目标。

在此处输入图像描述

0 投票
1 回答
438 浏览

asp.net-core - Razor 类库和 html 助手问题

我创建了一个小型管理工具,并决定将其转换为 Razor 类库,以便我也可以在其他应用程序中使用它。我创建了 Razor 类库项目,并添加了我在主项目中拥有的所有 razor 页面,并尝试测试新项目。问题是框​​架由于某种原因无法识别 html 帮助程序,所以我创建了一个新的干净项目并尝试找出问题所在,结果是应用程序没有触发剃须刀页面和 asp 的 post 操作-for 属性没有正确使用属性值。我使用以下代码来测试 Razor 类库。

Page1.cshtml.cs

Page1.cshtml

生成的html如下

正如您所见,MyInput.Name 的输入出现在我键入 Page1.cshtml 文件时。正确的输出应该如下:

我是否必须做一些事情才能使 html 助手工作并在发布请求发生时调用 OnPost 操作?

0 投票
0 回答
304 浏览

c# - ASP.net core 2.2 web 应用程序找不到来自 Razor 类库的页面

即使引用了该库,webapp 也找不到来自 Razor 类库的 Razor 页面。

抛出的错误是(省略了一些带有 **** 的名称):

大家好,

我尝试在我的 ASP.NET Core 2.2 Web 应用程序中使用 Razor 类库来存储 Razor 页面,以便它们可以在其他地方重用。

我查阅了一些教程,看起来很简单:1. 创建一个 Razor 类库 2. 创建一个 asp.net 核心 webapp 3. 在 webapp 中引用该库 4. 运行并找到该页面

我所做的是从 webapp 中删除 Pages 文件夹并将整个结构放入 Razor 类库中。根据教程,唯一需要让它工作的是参考图书馆,但似乎还需要其他东西,或者我只是做错了什么。

谢谢输入!